Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 204959 Details for
Bug 285998
openvz-sources version bump to fix CVEs and other issues
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch with updated ebuild and patches as described.
ovz-64.7.patch (text/plain), 37.43 KB, created by
Jeff Mitchell
on 2009-09-22 18:39:00 UTC
(
hide
)
Description:
Patch with updated ebuild and patches as described.
Filename:
MIME Type:
Creator:
Jeff Mitchell
Created:
2009-09-22 18:39:00 UTC
Size:
37.43 KB
patch
obsolete
>commit f21a56b58ea51f677c2b99178a42dccaf028d485 >Author: Jeff Mitchell <funtoo@jefferai.org> >Date: Tue Sep 22 18:37:17 2009 +0000 > > New openvz-sources version > >diff --git a/metadata/cache/sys-kernel/openvz-sources-2.6.18.028.064.7 b/metadata/cache/sys-kernel/openvz-sources-2.6.18.028.064.7 >new file mode 100644 >index 0000000..70ffb77 >--- /dev/null >+++ b/metadata/cache/sys-kernel/openvz-sources-2.6.18.028.064.7 >@@ -0,0 +1,22 @@ >+!build? ( sys-apps/sed >=sys-devel/binutils-2.11.90.0.31 ) >+!build? ( >=sys-libs/ncurses-5.2 sys-devel/make ) virtual/dev-manager >+2.6.18.028.064.7 >+mirror://kernel/linux/kernel/v./linux-2.6.18.tar.bz2 http://download.openvz.org/kernel/branches/rhel5-2.6.18/028stab064.7/patches/patch-128.2.1.el5.028stab064.7-combined.gz >+binchecks strip >+http://www.openvz.org >+GPL-2 >+Full sources including OpenVZ patchset for the 2.6.18 kernel tree >+~amd64 ~ia64 ~ppc64 ~sparc ~x86 >+eutils kernel-2 multilib portability toolchain-funcs versionator >+symlink build >+ >+ >+virtual/linux-sources >+ >+ >+compile install postinst preinst setup unpack >+ >+ >+ >+ >+ >diff --git a/sys-kernel/openvz-sources/ChangeLog b/sys-kernel/openvz-sources/ChangeLog >index a548395..b573ac4 100644 >--- a/sys-kernel/openvz-sources/ChangeLog >+++ b/sys-kernel/openvz-sources/ChangeLog >@@ -2,6 +2,15 @@ > # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 > # $Header: /var/cvsroot/gentoo-x86/sys-kernel/openvz-sources/ChangeLog,v 1.114 2009/07/22 05:54:03 pva Exp $ > >+ 22 Sep 2009; Jeff Mitchell <funtoo@jefferai.org> >+ +openvz-sources-2.6.18.028.064.7.ebuild, >+ +files/openvz-sources-2.6.18.028.064.7-syscall.patch, >+ +files/openvz-sources-2.6.18.028.064.7-cifs-buildfix.patch, >+ +files/openvz-sources-2.6.18.028.064.7-bridgemac.patch: >+ Updated openvz-sources fixes multiple CVEs (bug #285998). >+ Includes syscall patch (bug #204878), CIFS-build-fix patch, >+ and bridge fix patch. >+ > 22 Jul 2009; Peter Volkov <pva@gentoo.org> > openvz-sources-2.6.27.2.1-r2.ebuild, > +files/openvz-sources-2.6.27.2.1-SLAB.patch: >diff --git a/sys-kernel/openvz-sources/Manifest b/sys-kernel/openvz-sources/Manifest >index 0a9fb18..02cfe80 100644 >--- a/sys-kernel/openvz-sources/Manifest >+++ b/sys-kernel/openvz-sources/Manifest >@@ -6,6 +6,9 @@ AUX openvz-sources-2.6.18.028.057.2-missed-PATH_MAX-sumversion.c.patch 379 RMD16 > AUX openvz-sources-2.6.18.028.057.2-qouta-compat-build.patch 365 RMD160 1d7dea5718e0e889c8fe6c6c6cfbd3636fa91ad3 SHA1 5fb1d346e362cb8cd54b4f02283ce185782f7d28 SHA256 c7d3ae9adfe7464ebe7d25948978392c244d2021cda678e30a316295a96ec4ff > AUX openvz-sources-2.6.18.028.057.2-utimenstat.patch 528 RMD160 1edc34e5e0fddd8c0960b8dcbc54d0f0f486a0fa SHA1 26190020c24645e71c10c4da8ab79f120be946e2 SHA256 79cbf231ecea1eb45d94c5f2ef38082e8c9745f25d4fc6e53fa46fb69631dd25 > AUX openvz-sources-2.6.18.028.059.6-proper-utimensat.patch 9045 RMD160 20347f1a11d170bd74a656394894a82e79434c12 SHA1 8b348767d4f4f7aaaba04d58182d6fb5b1b17170 SHA256 a90da0c995040f86fc559c7bfebe27db96eb3423c919f034acf710b9dfff97cb >+AUX openvz-sources-2.6.18.028.064.7-bridgemac.patch 514 RMD160 bdd04c4dc86c79b91b7675d8c59b569483e444c4 SHA1 ef092a68c4dab7dc7284b2be8cc74b1510def485 SHA256 250bc852aedca35624d9352c1d693e147812504b2799cd2ba20f0c9763e61908 >+AUX openvz-sources-2.6.18.028.064.7-cifs-buildfix.patch 24766 RMD160 eb1bc2fa2455aef6d6fec88ef393cc295f8c1761 SHA1 d41347ea67fb684243760c6c93a07cbc74ca9049 SHA256 581a2366559f077aabe1d7dcd1e64b312d537d2ffff1b94c609ef2d3980e2973 >+AUX openvz-sources-2.6.18.028.064.7-syscall.patch 1076 RMD160 3ea449e7e7c53e94e3723c16f3715ee3651eafd4 SHA1 f636eec4cd72183f5581420aef35c139ffce1971 SHA256 89a2111ef8e0cff2b078a025b43a685c3a8d7bb7dab1c6f2991ef3b13d8051ee > AUX openvz-sources-2.6.27.2.1-SLAB.patch 3849 RMD160 dda122170b3124c9ed1bc92b39ec07eee0651d76 SHA1 9c36e56271500b9974fc56bb937a0defeef80fb8 SHA256 d96fe971332c095ebabe3875403389aca561be86eee8123f6e15e6bf61a2734d > AUX openvz-sources-2.6.27.2.1-avoid-double-free.patch 746 RMD160 56c953b85e61a9d92fb3fa9afa97f9278713b223 SHA1 b092cba443192d441ed1260e78a7d6846db0bc3c SHA256 2ebd2b63b1acdd09933420fd2d7beec751b4363c513a4192a9bdab3550fa0f7b > AUX openvz-sources-2.6.27.2.1-ban-netns-creation.patch 1451 RMD160 fb5dd54761508624a3d9a7567206054b55549c46 SHA1 57f6de1ca6bbf9854739b976191de6f12b04c411 SHA256 5ac15c60dbfca7abcb5644c013270270eec375f6197bdf36f3006e38010561f7 >@@ -17,14 +20,16 @@ DIST linux-2.6.18.tar.bz2 41863580 RMD160 f92283f956880676bfb1f1d5288325461e4e02 > DIST linux-2.6.24.tar.bz2 46737783 RMD160 0e5194c69c3d82c41ece689c4f84e638f8776d34 SHA1 351aebc784a5395fe4c92d1e514a89680482f7e2 SHA256 413c64fbbcf81244cb5571be4963644a1e81166a2b0f008a016528363b65c5d3 > DIST linux-2.6.27.tar.bz2 50355835 RMD160 5be4595ad824a4af67c1ec0c692838ad0c31f0c0 SHA1 8425ec3be2652f9d511911ff4fcf99039d4574be SHA256 0e99bf9e83f4d1ae0c656741a84dfddfa9c4d2469cf35475f5939d02dc3e4393 > DIST patch-128.1.1.el5.028stab062.3-combined.gz 13182498 RMD160 4b93a91685384a0f284a28a6f3368d4a9f6d1aa4 SHA1 047f73245a1500b2b5f362f343a0d48b417a2510 SHA256 2371355ffd2c3ee60598a6d663f0e5a3f7eb75f0e32707bf9ee88a14eda67e0a >+DIST patch-128.2.1.el5.028stab064.7-combined.gz 13207197 RMD160 06db8683c8e10b4053428e7ea5cc9f49cc1c8a3d SHA1 fc1bb4751bee61555068d19d55fd5e6fc5afc7f5 SHA256 1530498e563f34961a65a72e3f2dc47a52f68af5bd5c2d11b8aa86fca2bf8c63 > DIST patch-briullov.1-combined.gz 919351 RMD160 5d49786c302a0e50b8d965037b4a28c2bd6c97b8 SHA1 10ecb9f6b89e3c68939383ef4ee8f069ad4abd60 SHA256 ea3369b84299b82b3983d48154d86a8275335f03d1c07cd15db8b6adc41bf4d7 > DIST patch-ovz009.1-combined.gz 874874 RMD160 b57c976485565c71e6495f24e7f8cf8d11507c2e SHA1 cffbee2b4bc41e0919572ce6971c41d45be6c56a SHA256 1d837a763bb01c1b0d9e4007f2376a05c73d7174c48624fb467042ccebdff0a8 > DIST patch-ovz028stab056.1-combined.gz 1167989 RMD160 7953e020db894ddd9c6e61b6cbbedea0179ab09b SHA1 105ef675c10ed7063309dd636d2580a5cc3c05dd SHA256 2a99359fcf8af8f4b5ffd56011a63c2300086f944784ff855a9f7ecf46434df9 > EBUILD openvz-sources-2.6.18.028.056.1.ebuild 1765 RMD160 1c54e78e69e1868ffe0219fd0d7af07cf0ce52c1 SHA1 7eac1758a9b24f69c7475041d47ae761019a6700 SHA256 a9209ad3c1a16dc223a5c823fbf3ea827a2b7f027c8910705b6994f67c538c63 > EBUILD openvz-sources-2.6.18.028.062.3.ebuild 1785 RMD160 7d317ca4f15e3e3f2b52171f82f9afa49fedea3f SHA1 cf71a1faa111976c08d9a4305605d9260b5ac880 SHA256 09af10dbcfa0508611ef9dc162a693aff46219a0d1bbd5bb34f410d38052caa2 >+EBUILD openvz-sources-2.6.18.028.064.7.ebuild 1902 RMD160 16f102596321e976a75e300f5370926c6d1ac43d SHA1 5520986a364c39f69ac850fd1ec13ab8a1a406f1 SHA256 c40ac1b62510040ffaadc2793e2e2dd82a8d906c71369850177d5fa38265e5b8 > EBUILD openvz-sources-2.6.24.009.1-r2.ebuild 1371 RMD160 869f8c26e53e972ea5a825886780c971de955b6e SHA1 6f17e063a234b21e67d9b22b2d7b1e33b68d19b4 SHA256 732bb94e4aecdee17a479b2c4a84889428d2ba6579ce03541b37b7d570c5b396 > EBUILD openvz-sources-2.6.27.2.1-r1.ebuild 1666 RMD160 85e72630cb4aec42ceba49ed6587f5cd1a65818f SHA1 02b0149ee92f31f1b38efd3b8d97eb7ed7a6be1c SHA256 8acd16fc39184e6387a188d9caf5532d6de081fce63e7206326bafd9fd84b76e > EBUILD openvz-sources-2.6.27.2.1-r2.ebuild 2165 RMD160 4462d4bf8cbc84bd65c1aa7e5538da765e80deed SHA1 74b5210696dcedde80f2a2b70aa41ef6c03fdf0f SHA256 88aacda1a9d9120d77dece68b8f28aea531c6d0e28854e043652fc035c6d56aa > EBUILD openvz-sources-2.6.27.9999.ebuild 936 RMD160 ce059496362ca23f57b6f75e6a844d3a8c5c164a SHA1 aad5e0a3891e1d03a45fa2ff64d2df39c1bdf777 SHA256 2bebffda43407ddb1f516b824e744778ff0e5e317ebfed9bddb3072f4beeac9b >-MISC ChangeLog 28277 RMD160 093f1bca3ccd96c202bee5a2e446db11652d6eb5 SHA1 995ca224d0e5de03ab458942fe778233aa024714 SHA256 91f548fc86ed7369b3ed4599ccb3f6a5eb8d34369ae7833b14121681ee5eadb2 >+MISC ChangeLog 28694 RMD160 6b7b54b3b9ea4a3a98fdad6e9695f7b3387ce0b4 SHA1 d9ca42889cf852e63c9f3603fc0ba0d5e5ec13df SHA256 ae5681c5dafea161d10c292062b65a375d3efae9f74ce50ff41589e41cc59230 > MISC metadata.xml 554 RMD160 0d62a03694a7c0e0caa538a603b3a41916451887 SHA1 d4d18f1c2c52425a1a819ac0d76ff1c906853047 SHA256 78f7ce5323a1a18773d5a6a01cffcc729fb51f4a667b5d2df37450907a007a31 >diff --git a/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-bridgemac.patch b/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-bridgemac.patch >new file mode 100644 >index 0000000..b092c15 >--- /dev/null >+++ b/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-bridgemac.patch >@@ -0,0 +1,15 @@ >+diff -urN linux/net/bridge/br_stp_if.c drobtmp/net/bridge/br_stp_if.c >+--- linux/net/bridge/br_stp_if.c 2009-06-20 01:46:25.000000000 -0600 >++++ drobtmp/net/bridge/br_stp_if.c 2009-06-27 16:47:57.000000000 -0600 >+@@ -163,10 +163,7 @@ >+ struct net_bridge_port *p; >+ >+ list_for_each_entry(p, &br->port_list, list) { >+- if (addr == br_mac_zero || >+- memcmp(p->dev->dev_addr, addr, ETH_ALEN) < 0) >+- addr = p->dev->dev_addr; >+- >++ addr = p->dev->dev_addr; >+ } >+ >+ if (compare_ether_addr(br->bridge_id.addr, addr)) >diff --git a/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-cifs-buildfix.patch b/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-cifs-buildfix.patch >new file mode 100644 >index 0000000..6352937 >--- /dev/null >+++ b/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-cifs-buildfix.patch >@@ -0,0 +1,667 @@ >+028stab062.3 -- buildfix >+ >+The number of issues during move up to 028stab062.3 >+ >+1) There is no f_path.dentry in file struct. Use f_dentry former. >+2) IOMMU_HELPER depends on a widen number of vars. >+3) PDAudioCF sound card is plainly broken. Mark it that. >+4) Xen PV-ON-HVM is broken as well if base Xen support is not >+ enabled. Don't turn on XEN_PV_ON_HVM config option without >+ Xen support in general. >+5) ACPI_PROCESSOR config should be built in. Not module. >+6) There is no zero_user_page but zero_user function. >+ >+Closes http://bugzilla.openvz.org/show_bug.cgi?id=1279 >+ >+Signed-off-by: Cyrill Gorcunov <gorcunov@openvz.org> >+--- >+ arch/x86_64/Kconfig | 2 >+ fs/cifs/cifsfs.c | 6 - >+ fs/cifs/fcntl.c | 4 - >+ fs/cifs/file.c | 86 +++++++++++++------------- >+ fs/cifs/readdir.c | 28 ++++---- >+ fs/ntfs/aops.c | 2 >+ fs/ntfs/compress.c | 2 >+ samples/tracepoints/tracepoint-probe-sample.c | 6 - >+ sound/oss/dmasound/dmasound_core.c | 4 - >+ sound/oss/msnd_pinnacle.c | 4 - >+ sound/oss/soundcard.c | 8 +- >+ sound/pcmcia/Kconfig | 2 >+ sound/sound_firmware.c | 2 >+ 13 files changed, 78 insertions(+), 78 deletions(-) >+ >+Index: linux-2.6.18-openvz/arch/x86_64/Kconfig >+===================================================================== >+--- linux-2.6.18-openvz.orig/arch/x86_64/Kconfig >++++ linux-2.6.18-openvz/arch/x86_64/Kconfig >+@@ -532,7 +532,7 @@ config AMD_IOMMU >+ config IOMMU_HELPER >+ bool "IOMMU Helper functions" >+ default n >+- depends on (AMD_IOMMU || GART_IOMMU) >++ depends on (CALGARY_IOMMU || GART_IOMMU || SWIOTLB || AMD_IOMMU) >+ >+ # need this always selected by IOMMU for the VIA workaround >+ config SWIOTLB >+Index: linux-2.6.18-openvz/fs/cifs/cifsfs.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/fs/cifs/cifsfs.c >++++ linux-2.6.18-openvz/fs/cifs/cifsfs.c >+@@ -674,7 +674,7 @@ cifs_get_sb(struct file_system_type *fs_ >+ static ssize_t cifs_file_aio_write(struct kiocb *iocb, const struct iovec *iov, >+ unsigned long nr_segs, loff_t pos) >+ { >+- struct inode *inode = iocb->ki_filp->f_path.dentry->d_inode; >++ struct inode *inode = iocb->ki_filp->f_dentry->d_inode; >+ ssize_t written; >+ >+ written = generic_file_aio_write(iocb, iov, nr_segs, pos); >+@@ -714,9 +714,9 @@ static loff_t cifs_llseek(struct file *f >+ way so we must seek to end on non-oplocked files by >+ setting the revalidate time to zero */ >+ #if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 19) >+- CIFS_I(file->f_path.dentry->d_inode)->time = 0; >++ CIFS_I(file->f_dentry->d_inode)->time = 0; >+ >+- retval = cifs_revalidate(file->f_path.dentry); >++ retval = cifs_revalidate(file->f_dentry); >+ #else >+ if(file->f_dentry->d_inode) >+ CIFS_I(file->f_dentry->d_inode)->time = 0; >+Index: linux-2.6.18-openvz/fs/cifs/fcntl.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/fs/cifs/fcntl.c >++++ linux-2.6.18-openvz/fs/cifs/fcntl.c >+@@ -85,10 +85,10 @@ int cifs_dir_notify(struct file *file, u >+ >+ full_path = build_path_from_dentry(file->f_dentry); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ pTcon = cifs_sb->tcon; >+ >+- full_path = build_path_from_dentry(file->f_path.dentry); >++ full_path = build_path_from_dentry(file->f_dentry); >+ #endif >+ >+ if (full_path == NULL) { >+Index: linux-2.6.18-openvz/fs/cifs/file.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/fs/cifs/file.c >++++ linux-2.6.18-openvz/fs/cifs/file.c >+@@ -153,12 +153,12 @@ static inline int cifs_open_inode_helper >+ } else { >+ if (file->f_dentry->d_inode->i_mapping) { >+ #else >+- if (timespec_equal(&file->f_path.dentry->d_inode->i_mtime, &temp) && >+- (file->f_path.dentry->d_inode->i_size == >++ if (timespec_equal(&file->f_dentry->d_inode->i_mtime, &temp) && >++ (file->f_dentry->d_inode->i_size == >+ (loff_t)le64_to_cpu(buf->EndOfFile))) { >+ cFYI(1, ("inode unchanged on server")); >+ } else { >+- if (file->f_path.dentry->d_inode->i_mapping) { >++ if (file->f_dentry->d_inode->i_mapping) { >+ #endif >+ /* BB no need to lock inode until after invalidate >+ since namei code should already have it locked? */ >+@@ -171,7 +171,7 @@ static inline int cifs_open_inode_helper >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ invalidate_remote_inode(file->f_dentry->d_inode); >+ #else >+- invalidate_remote_inode(file->f_path.dentry->d_inode); >++ invalidate_remote_inode(file->f_dentry->d_inode); >+ #endif >+ } >+ >+@@ -180,14 +180,14 @@ client_can_cache: >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ rc = cifs_get_inode_info_unix(&file->f_dentry->d_inode, >+ #else >+- rc = cifs_get_inode_info_unix(&file->f_path.dentry->d_inode, >++ rc = cifs_get_inode_info_unix(&file->f_dentry->d_inode, >+ #endif >+ full_path, inode->i_sb, xid); >+ >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ rc = cifs_get_inode_info(&file->f_dentry->d_inode, >+ #else >+- rc = cifs_get_inode_info(&file->f_path.dentry->d_inode, >++ rc = cifs_get_inode_info(&file->f_dentry->d_inode, >+ #endif >+ full_path, buf, inode->i_sb, xid, NULL); >+ >+@@ -199,7 +199,7 @@ client_can_cache: >+ file->f_dentry->d_inode)); >+ #else >+ cFYI(1, ("Exclusive Oplock granted on inode %p", >+- file->f_path.dentry->d_inode)); >++ file->f_dentry->d_inode)); >+ #endif >+ } else if ((*oplock & 0xF) == OPLOCK_READ) >+ pCifsInode->clientCanCacheRead = true; >+@@ -232,7 +232,7 @@ int cifs_open(struct inode *inode, struc >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ pCifsInode = CIFS_I(file->f_dentry->d_inode); >+ #else >+- pCifsInode = CIFS_I(file->f_path.dentry->d_inode); >++ pCifsInode = CIFS_I(file->f_dentry->d_inode); >+ #endif >+ read_lock(&GlobalSMBSeslock); >+ list_for_each(tmp, &pCifsInode->openFileList) { >+@@ -264,7 +264,7 @@ int cifs_open(struct inode *inode, struc >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ full_path = build_path_from_dentry(file->f_dentry); >+ #else >+- full_path = build_path_from_dentry(file->f_path.dentry); >++ full_path = build_path_from_dentry(file->f_dentry); >+ #endif >+ if (full_path == NULL) { >+ FreeXid(xid); >+@@ -353,7 +353,7 @@ int cifs_open(struct inode *inode, struc >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ pCifsInode = CIFS_I(file->f_dentry->d_inode); >+ #else >+- pCifsInode = CIFS_I(file->f_path.dentry->d_inode); >++ pCifsInode = CIFS_I(file->f_dentry->d_inode); >+ #endif >+ if (pCifsInode) { >+ rc = cifs_open_inode_helper(inode, file, pCifsInode, >+@@ -453,14 +453,14 @@ static int cifs_reopen_file(struct file >+ and we can never tell if the caller already has the rename_sem */ >+ full_path = build_path_from_dentry(file->f_dentry); >+ #else >+- if (file->f_path.dentry == NULL) { >++ if (file->f_dentry == NULL) { >+ cERROR(1, ("no valid name if dentry freed")); >+ dump_stack(); >+ rc = -EBADF; >+ goto reopen_error_exit; >+ } >+ >+- inode = file->f_path.dentry->d_inode; >++ inode = file->f_dentry->d_inode; >+ if (inode == NULL) { >+ cERROR(1, ("inode not valid")); >+ dump_stack(); >+@@ -475,7 +475,7 @@ static int cifs_reopen_file(struct file >+ those that already have the rename sem can end up causing writepage >+ to get called and if the server was down that means we end up here, >+ and we can never tell if the caller already has the rename_sem */ >+- full_path = build_path_from_dentry(file->f_path.dentry); >++ full_path = build_path_from_dentry(file->f_dentry); >+ #endif >+ if (full_path == NULL) { >+ rc = -ENOMEM; >+@@ -543,7 +543,7 @@ reopen_error_exit: >+ file->f_dentry->d_inode)); >+ #else >+ cFYI(1, ("Exclusive Oplock granted on inode %p", >+- file->f_path.dentry->d_inode)); >++ file->f_dentry->d_inode)); >+ #endif >+ } else if ((oplock & 0xF) == OPLOCK_READ) { >+ pCifsInode->clientCanCacheRead = true; >+@@ -673,7 +673,7 @@ int cifs_closedir(struct inode *inode, s >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ CIFS_SB(file->f_dentry->d_sb); >+ #else >+- CIFS_SB(file->f_path.dentry->d_sb); >++ CIFS_SB(file->f_dentry->d_sb); >+ #endif >+ >+ pTcon = cifs_sb->tcon; >+@@ -785,7 +785,7 @@ int cifs_lock(struct file *file, int cmd >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #endif >+ pTcon = cifs_sb->tcon; >+ >+@@ -922,14 +922,14 @@ ssize_t cifs_user_write(struct file *fil >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #endif >+ >+ pTcon = cifs_sb->tcon; >+ >+ /* cFYI(1, >+ (" write %d bytes to offset %lld of %s", write_size, >+- *poffset, file->f_path.dentry->d_name.name)); */ >++ *poffset, file->f_dentry->d_name.name)); */ >+ >+ if (file->private_data == NULL) >+ return -EBADF; >+@@ -944,7 +944,7 @@ ssize_t cifs_user_write(struct file *fil >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ if (*poffset > file->f_dentry->d_inode->i_size) >+ #else >+- if (*poffset > file->f_path.dentry->d_inode->i_size) >++ if (*poffset > file->f_dentry->d_inode->i_size) >+ #endif >+ long_op = CIFS_VLONG_OP; /* writes past EOF can be slow */ >+ else >+@@ -1017,19 +1017,19 @@ ssize_t cifs_user_write(struct file *fil >+ } >+ mark_inode_dirty_sync(file->f_dentry->d_inode); >+ #else >+- if ((file->f_path.dentry) && (file->f_path.dentry->d_inode)) { >+- struct inode *inode = file->f_path.dentry->d_inode; >++ if ((file->f_dentry) && (file->f_dentry->d_inode)) { >++ struct inode *inode = file->f_dentry->d_inode; >+ /* Do not update local mtime - server will set its actual value on write >+ * inode->i_ctime = inode->i_mtime = >+ * current_fs_time(inode->i_sb);*/ >+ if (total_written > 0) { >+ spin_lock(&inode->i_lock); >+- if (*poffset > file->f_path.dentry->d_inode->i_size) >+- i_size_write(file->f_path.dentry->d_inode, >++ if (*poffset > file->f_dentry->d_inode->i_size) >++ i_size_write(file->f_dentry->d_inode, >+ *poffset); >+ spin_unlock(&inode->i_lock); >+ } >+- mark_inode_dirty_sync(file->f_path.dentry->d_inode); >++ mark_inode_dirty_sync(file->f_dentry->d_inode); >+ #endif >+ } >+ FreeXid(xid); >+@@ -1063,12 +1063,12 @@ static ssize_t cifs_write(struct file *f >+ >+ if (*poffset > file->f_dentry->d_inode->i_size) >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ >+ pTcon = cifs_sb->tcon; >+ >+ cFYI(1, ("write %zd bytes to offset %lld of %s", write_size, >+- *poffset, file->f_path.dentry->d_name.name)); >++ *poffset, file->f_dentry->d_name.name)); >+ >+ if (file->private_data == NULL) >+ return -EBADF; >+@@ -1076,7 +1076,7 @@ static ssize_t cifs_write(struct file *f >+ >+ xid = GetXid(); >+ >+- if (*poffset > file->f_path.dentry->d_inode->i_size) >++ if (*poffset > file->f_dentry->d_inode->i_size) >+ #endif >+ long_op = CIFS_VLONG_OP; /* writes past EOF take long time */ >+ else >+@@ -1167,18 +1167,18 @@ static ssize_t cifs_write(struct file *f >+ } >+ mark_inode_dirty_sync(file->f_dentry->d_inode); >+ #else >+- if ((file->f_path.dentry) && (file->f_path.dentry->d_inode)) { >++ if ((file->f_dentry) && (file->f_dentry->d_inode)) { >+ /*BB We could make this contingent on superblock ATIME flag too */ >+-/* file->f_path.dentry->d_inode->i_ctime = >+- file->f_path.dentry->d_inode->i_mtime = CURRENT_TIME;*/ >++/* file->f_dentry->d_inode->i_ctime = >++ file->f_dentry->d_inode->i_mtime = CURRENT_TIME;*/ >+ if (total_written > 0) { >+- spin_lock(&file->f_path.dentry->d_inode->i_lock); >+- if (*poffset > file->f_path.dentry->d_inode->i_size) >+- i_size_write(file->f_path.dentry->d_inode, >++ spin_lock(&file->f_dentry->d_inode->i_lock); >++ if (*poffset > file->f_dentry->d_inode->i_size) >++ i_size_write(file->f_dentry->d_inode, >+ *poffset); >+- spin_unlock(&file->f_path.dentry->d_inode->i_lock); >++ spin_unlock(&file->f_dentry->d_inode->i_lock); >+ } >+- mark_inode_dirty_sync(file->f_path.dentry->d_inode); >++ mark_inode_dirty_sync(file->f_dentry->d_inode); >+ #endif >+ } >+ FreeXid(xid); >+@@ -1695,7 +1695,7 @@ int cifs_fsync(struct file *file, struct >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ struct inode *inode = file->f_dentry->d_inode; >+ #else >+- struct inode *inode = file->f_path.dentry->d_inode; >++ struct inode *inode = file->f_dentry->d_inode; >+ #endif >+ >+ xid = GetXid(); >+@@ -1753,7 +1753,7 @@ int cifs_flush(struct file *file) >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ struct inode *inode = file->f_dentry->d_inode; >+ #else >+- struct inode *inode = file->f_path.dentry->d_inode; >++ struct inode *inode = file->f_dentry->d_inode; >+ #endif >+ int rc = 0; >+ >+@@ -1797,7 +1797,7 @@ ssize_t cifs_user_read(struct file *file >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #endif >+ pTcon = cifs_sb->tcon; >+ >+@@ -1881,7 +1881,7 @@ static ssize_t cifs_read(struct file *fi >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #endif >+ pTcon = cifs_sb->tcon; >+ >+@@ -1941,7 +1941,7 @@ int cifs_file_mmap(struct file *file, st >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ struct dentry *dentry = file->f_dentry; >+ #else >+- struct dentry *dentry = file->f_path.dentry; >++ struct dentry *dentry = file->f_dentry; >+ #endif >+ int rc, xid; >+ >+@@ -2031,7 +2031,7 @@ static int cifs_readpages(struct file *f >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #endif >+ pTcon = cifs_sb->tcon; >+ >+@@ -2174,8 +2174,8 @@ static int cifs_readpage_worker(struct f >+ file->f_dentry->d_inode->i_atime = >+ current_fs_time(file->f_dentry->d_inode->i_sb); >+ #else >+- file->f_path.dentry->d_inode->i_atime = >+- current_fs_time(file->f_path.dentry->d_inode->i_sb); >++ file->f_dentry->d_inode->i_atime = >++ current_fs_time(file->f_dentry->d_inode->i_sb); >+ #endif >+ >+ if (PAGE_CACHE_SIZE > rc) >+Index: linux-2.6.18-openvz/fs/cifs/readdir.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/fs/cifs/readdir.c >++++ linux-2.6.18-openvz/fs/cifs/readdir.c >+@@ -82,25 +82,25 @@ static int construct_dentry(struct qstr >+ if (*ptmp_inode == NULL) { >+ *ptmp_inode = new_inode(file->f_dentry->d_sb); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ pTcon = cifs_sb->tcon; >+ >+ qstring->hash = full_name_hash(qstring->name, qstring->len); >+- tmp_dentry = d_lookup(file->f_path.dentry, qstring); >++ tmp_dentry = d_lookup(file->f_dentry, qstring); >+ if (tmp_dentry) { >+ cFYI(0, ("existing dentry with inode 0x%p", >+ tmp_dentry->d_inode)); >+ *ptmp_inode = tmp_dentry->d_inode; >+ /* BB overwrite old name? i.e. tmp_dentry->d_name and tmp_dentry->d_name.len??*/ >+ if (*ptmp_inode == NULL) { >+- *ptmp_inode = new_inode(file->f_path.dentry->d_sb); >++ *ptmp_inode = new_inode(file->f_dentry->d_sb); >+ #endif >+ if (*ptmp_inode == NULL) >+ return rc; >+ rc = 1; >+ } >+ #if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 19) >+- if (file->f_path.dentry->d_sb->s_flags & MS_NOATIME) >++ if (file->f_dentry->d_sb->s_flags & MS_NOATIME) >+ #else >+ if (file->f_dentry->d_sb->s_flags & MS_NOATIME) >+ #endif >+@@ -109,7 +109,7 @@ static int construct_dentry(struct qstr >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ tmp_dentry = d_alloc(file->f_dentry, qstring); >+ #else >+- tmp_dentry = d_alloc(file->f_path.dentry, qstring); >++ tmp_dentry = d_alloc(file->f_dentry, qstring); >+ #endif >+ if (tmp_dentry == NULL) { >+ cERROR(1, ("Failed allocating dentry")); >+@@ -119,7 +119,7 @@ static int construct_dentry(struct qstr >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ *ptmp_inode = new_inode(file->f_dentry->d_sb); >+ #else >+- *ptmp_inode = new_inode(file->f_path.dentry->d_sb); >++ *ptmp_inode = new_inode(file->f_dentry->d_sb); >+ #endif >+ if (pTcon->nocase) >+ tmp_dentry->d_op = &cifs_ci_dentry_ops; >+@@ -128,7 +128,7 @@ static int construct_dentry(struct qstr >+ if (*ptmp_inode == NULL) >+ return rc; >+ #if LINUX_VERSION_CODE > KERNEL_VERSION(2, 6, 19) >+- if (file->f_path.dentry->d_sb->s_flags & MS_NOATIME) >++ if (file->f_dentry->d_sb->s_flags & MS_NOATIME) >+ #else >+ if (file->f_dentry->d_sb->s_flags & MS_NOATIME) >+ #endif >+@@ -514,7 +514,7 @@ static int initiate_cifs_search(const in >+ >+ full_path = build_path_from_dentry(file->f_dentry); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ if (cifs_sb == NULL) >+ return -EINVAL; >+ >+@@ -522,7 +522,7 @@ static int initiate_cifs_search(const in >+ if (pTcon == NULL) >+ return -EINVAL; >+ >+- full_path = build_path_from_dentry(file->f_path.dentry); >++ full_path = build_path_from_dentry(file->f_dentry); >+ #endif >+ >+ if (full_path == NULL) >+@@ -691,7 +691,7 @@ static int is_dir_changed(struct file *f >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ struct inode *inode = file->f_dentry->d_inode; >+ #else >+- struct inode *inode = file->f_path.dentry->d_inode; >++ struct inode *inode = file->f_dentry->d_inode; >+ #endif >+ struct cifsInodeInfo *cifsInfo = CIFS_I(inode); >+ >+@@ -924,7 +924,7 @@ static int cifs_filldir(char *pfindEntry >+ #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 20) >+ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ #endif >+ >+ qstring.name = scratch_buf; >+@@ -1083,7 +1083,7 @@ int cifs_readdir(struct file *file, void >+ if (filldir(direntry, "..", 2, file->f_pos, >+ file->f_dentry->d_parent->d_inode->i_ino, DT_DIR) < 0) { >+ #else >+- cifs_sb = CIFS_SB(file->f_path.dentry->d_sb); >++ cifs_sb = CIFS_SB(file->f_dentry->d_sb); >+ pTcon = cifs_sb->tcon; >+ if (pTcon == NULL) >+ return -EINVAL; >+@@ -1091,7 +1091,7 @@ int cifs_readdir(struct file *file, void >+ switch ((int) file->f_pos) { >+ case 0: >+ if (filldir(direntry, ".", 1, file->f_pos, >+- file->f_path.dentry->d_inode->i_ino, DT_DIR) < 0) { >++ file->f_dentry->d_inode->i_ino, DT_DIR) < 0) { >+ cERROR(1, ("Filldir for current dir failed")); >+ rc = -ENOMEM; >+ break; >+@@ -1099,7 +1099,7 @@ int cifs_readdir(struct file *file, void >+ file->f_pos++; >+ case 1: >+ if (filldir(direntry, "..", 2, file->f_pos, >+- file->f_path.dentry->d_parent->d_inode->i_ino, DT_DIR) < 0) { >++ file->f_dentry->d_parent->d_inode->i_ino, DT_DIR) < 0) { >+ #endif >+ cERROR(1, ("Filldir for parent dir failed")); >+ rc = -ENOMEM; >+Index: linux-2.6.18-openvz/fs/ntfs/aops.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/fs/ntfs/aops.c >++++ linux-2.6.18-openvz/fs/ntfs/aops.c >+@@ -415,7 +415,7 @@ retry_readpage: >+ /* Is the page fully outside i_size? (truncate in progress) */ >+ if (unlikely(page->index >= (i_size + PAGE_CACHE_SIZE - 1) >> >+ PAGE_CACHE_SHIFT)) { >+- zero_user_page(page, 0, PAGE_CACHE_SIZE, KM_USER0); >++ zero_user(page, 0, PAGE_CACHE_SIZE); >+ ntfs_debug("Read outside i_size - truncated?"); >+ goto done; >+ } >+Index: linux-2.6.18-openvz/fs/ntfs/compress.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/fs/ntfs/compress.c >++++ linux-2.6.18-openvz/fs/ntfs/compress.c >+@@ -565,7 +565,7 @@ int ntfs_read_compressed_block(struct pa >+ if (xpage >= max_page) { >+ kfree(bhs); >+ kfree(pages); >+- zero_user_page(page, 0, PAGE_CACHE_SIZE, KM_USER0); >++ zero_user(page, 0, PAGE_CACHE_SIZE); >+ ntfs_debug("Compressed read outside i_size - truncated?"); >+ SetPageUptodate(page); >+ unlock_page(page); >+Index: linux-2.6.18-openvz/samples/tracepoints/tracepoint-probe-sample.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/samples/tracepoints/tracepoint-probe-sample.c >++++ linux-2.6.18-openvz/samples/tracepoints/tracepoint-probe-sample.c >+@@ -16,10 +16,10 @@ >+ static void probe_subsys_event(struct inode *inode, struct file *file) >+ { >+ path_get(&file->f_path); >+- dget(file->f_path.dentry); >++ dget(file->f_dentry); >+ printk(KERN_INFO "Event is encountered with filename %s\n", >+- file->f_path.dentry->d_name.name); >+- dput(file->f_path.dentry); >++ file->f_dentry->d_name.name); >++ dput(file->f_dentry); >+ path_put(&file->f_path); >+ } >+ >+Index: linux-2.6.18-openvz/sound/oss/dmasound/dmasound_core.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/sound/oss/dmasound/dmasound_core.c >++++ linux-2.6.18-openvz/sound/oss/dmasound/dmasound_core.c >+@@ -1051,7 +1051,7 @@ static int sq_release(struct inode *inod >+ >+ if (file->f_mode & FMODE_WRITE) { >+ if (write_sq.busy) >+- rc = sq_fsync(file, file->f_path.dentry); >++ rc = sq_fsync(file, file->f_dentry); >+ >+ sq_reset_output() ; /* make sure dma is stopped and all is quiet */ >+ write_sq_release_buffers(); >+@@ -1217,7 +1217,7 @@ static int sq_ioctl(struct inode *inode, >+ if ((file->f_mode & FMODE_READ) && dmasound.mach.record) >+ sq_reset_input() ; >+ if (file->f_mode & FMODE_WRITE) { >+- result = sq_fsync(file, file->f_path.dentry); >++ result = sq_fsync(file, file->f_dentry); >+ sq_reset_output() ; >+ } >+ /* if we are the shared resource owner then release them */ >+Index: linux-2.6.18-openvz/sound/oss/msnd_pinnacle.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/sound/oss/msnd_pinnacle.c >++++ linux-2.6.18-openvz/sound/oss/msnd_pinnacle.c >+@@ -1007,7 +1007,7 @@ static int dsp_write(const char __user * >+ >+ static ssize_t dev_read(struct file *file, char __user *buf, size_t count, loff_t *off) >+ { >+- int minor = iminor(file->f_path.dentry->d_inode); >++ int minor = iminor(file->f_dentry->d_inode); >+ if (minor == dev.dsp_minor) >+ return dsp_read(buf, count); >+ else >+@@ -1016,7 +1016,7 @@ static ssize_t dev_read(struct file *fil >+ >+ static ssize_t dev_write(struct file *file, const char __user *buf, size_t count, loff_t *off) >+ { >+- int minor = iminor(file->f_path.dentry->d_inode); >++ int minor = iminor(file->f_dentry->d_inode); >+ if (minor == dev.dsp_minor) >+ return dsp_write(buf, count); >+ else >+Index: linux-2.6.18-openvz/sound/oss/soundcard.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/sound/oss/soundcard.c >++++ linux-2.6.18-openvz/sound/oss/soundcard.c >+@@ -142,7 +142,7 @@ static int get_mixer_levels(void __user >+ >+ static ssize_t sound_read(struct file *file, char __user *buf, size_t count, loff_t *ppos) >+ { >+- int dev = iminor(file->f_path.dentry->d_inode); >++ int dev = iminor(file->f_dentry->d_inode); >+ int ret = -EINVAL; >+ >+ /* >+@@ -175,7 +175,7 @@ static ssize_t sound_read(struct file *f >+ >+ static ssize_t sound_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos) >+ { >+- int dev = iminor(file->f_path.dentry->d_inode); >++ int dev = iminor(file->f_dentry->d_inode); >+ int ret = -EINVAL; >+ >+ lock_kernel(); >+@@ -394,7 +394,7 @@ static int sound_ioctl(struct inode *ino >+ >+ static unsigned int sound_poll(struct file *file, poll_table * wait) >+ { >+- struct inode *inode = file->f_path.dentry->d_inode; >++ struct inode *inode = file->f_dentry->d_inode; >+ int dev = iminor(inode); >+ >+ DEB(printk("sound_poll(dev=%d)\n", dev)); >+@@ -419,7 +419,7 @@ static int sound_mmap(struct file *file, >+ int dev_class; >+ unsigned long size; >+ struct dma_buffparms *dmap = NULL; >+- int dev = iminor(file->f_path.dentry->d_inode); >++ int dev = iminor(file->f_dentry->d_inode); >+ >+ dev_class = dev & 0x0f; >+ dev >>= 4; >+Index: linux-2.6.18-openvz/sound/pcmcia/Kconfig >+===================================================================== >+--- linux-2.6.18-openvz.orig/sound/pcmcia/Kconfig >++++ linux-2.6.18-openvz/sound/pcmcia/Kconfig >+@@ -16,7 +16,7 @@ config SND_VXPOCKET >+ >+ config SND_PDAUDIOCF >+ tristate "Sound Core PDAudioCF" >+- depends on SND && PCMCIA >++ depends on BROKEN && SND && PCMCIA >+ select SND_PCM >+ help >+ Say Y here to include support for Sound Core PDAudioCF >+Index: linux-2.6.18-openvz/sound/sound_firmware.c >+===================================================================== >+--- linux-2.6.18-openvz.orig/sound/sound_firmware.c >++++ linux-2.6.18-openvz/sound/sound_firmware.c >+@@ -19,7 +19,7 @@ static int do_mod_firmware_load(const ch >+ printk(KERN_INFO "Unable to load '%s'.\n", fn); >+ return 0; >+ } >+- l = filp->f_path.dentry->d_inode->i_size; >++ l = filp->f_dentry->d_inode->i_size; >+ if (l <= 0 || l > 131072) >+ { >+ printk(KERN_INFO "Invalid firmware '%s'\n", fn); >diff --git a/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-syscall.patch b/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-syscall.patch >new file mode 100644 >index 0000000..5fbe686 >--- /dev/null >+++ b/sys-kernel/openvz-sources/files/openvz-sources-2.6.18.028.064.7-syscall.patch >@@ -0,0 +1,26 @@ >+diff -urN linux-2.6.18-openvz-028.062.3/arch/x86_64/ia32/ia32entry.S linux-2.6.18-openvz-028.062.3-ia32entryfix/arch/x86_64/ia32/ia32entry.S >+--- linux-2.6.18-openvz-028.062.3/arch/x86_64/ia32/ia32entry.S 2009-06-28 22:48:31.000000000 -0600 >++++ linux-2.6.18-openvz-028.062.3-ia32entryfix/arch/x86_64/ia32/ia32entry.S 2009-09-21 21:15:09.000000000 -0600 >+@@ -329,9 +329,9 @@ >+ orl $TS_COMPAT,threadinfo_status(%r10) >+ testl $(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT|_TIF_SECCOMP),threadinfo_flags(%r10) >+ jnz ia32_tracesys >+-ia32_do_syscall: >+ cmpl $(IA32_NR_syscalls-1),%eax >+- ja int_ret_from_sys_call /* ia32_tracesys has set RAX(%rsp) */ >++ ja ia32_badsys >++ia32_do_call: >+ IA32_ARG_FIXUP >+ call *ia32_sys_call_table(,%rax,8) # xxx: rip relative >+ ia32_sysret: >+@@ -345,7 +345,9 @@ >+ call syscall_trace_enter >+ LOAD_ARGS32 ARGOFFSET /* reload args from stack in case ptrace changed it */ >+ RESTORE_REST >+- jmp ia32_do_syscall >++ cmpl $(IA32_NR_syscalls-1),%eax >++ ja int_ret_from_sys_call /* ia32_tracesys has set RAX(%rsp) */ >++ jmp ia32_do_call >+ END(ia32_syscall) >+ >+ ia32_badsys: >diff --git a/sys-kernel/openvz-sources/openvz-sources-2.6.18.028.064.7.ebuild b/sys-kernel/openvz-sources/openvz-sources-2.6.18.028.064.7.ebuild >new file mode 100644 >index 0000000..9d965e8 >--- /dev/null >+++ b/sys-kernel/openvz-sources/openvz-sources-2.6.18.028.064.7.ebuild >@@ -0,0 +1,45 @@ >+# Copyright 1999-2009 Gentoo Foundation >+# Distributed under the terms of the GNU General Public License v2 >+# $Header: /var/cvsroot/gentoo-x86/sys-kernel/openvz-sources/openvz-sources-2.6.18.028.064.7.ebuild $ >+ >+inherit versionator >+ >+ETYPE="sources" >+ >+CKV=$(get_version_component_range 1-3) >+OKV=${OKV:-${CKV}} >+if [[ ${PR} == "r0" ]]; then >+KV_FULL=${CKV}-${PN/-*}-$(get_version_component_range 4-6) >+else >+KV_FULL=${CKV}-${PN/-*}-$(get_version_component_range 4-6)-${PR} >+fi >+OVZ_KERNEL="$(get_version_component_range 4)stab$(get_version_component_range 5)" >+OVZ_REV="$(get_version_component_range 6)" >+EXTRAVERSION=-${OVZ_KERNEL} >+KERNEL_URI="mirror://kernel/linux/kernel/v${KV_MAJOR}.${KV_MINOR}/linux-${OKV}.tar.bz2" >+ >+inherit kernel-2 >+detect_version >+ >+KEYWORDS="~amd64 ~ia64 ~ppc64 ~sparc ~x86" >+IUSE="" >+PATCHV="128.2.1.el5" >+DESCRIPTION="Full sources including OpenVZ patchset for the 2.6.18 kernel tree" >+HOMEPAGE="http://www.openvz.org" >+SRC_URI="${KERNEL_URI} ${ARCH_URI} >+ http://download.openvz.org/kernel/branches/rhel5-${CKV}/${OVZ_KERNEL}.${OVZ_REV}/patches/patch-${PATCHV}.${OVZ_KERNEL}.${OVZ_REV}-combined.gz" >+ >+UNIPATCH_STRICTORDER=1 >+UNIPATCH_LIST="${DISTDIR}/patch-${PATCHV}.${OVZ_KERNEL}.${OVZ_REV}-combined.gz >+${FILESDIR}/${PN}-2.6.18.028.064.7-syscall.patch >+${FILESDIR}/${PN}-2.6.18.028.064.7-bridgemac.patch >+${FILESDIR}/${PN}-2.6.18.028.064.7-cifs-buildfix.patch" >+ >+K_EXTRAEINFO="This openvz kernel uses RHEL5 patchset instead of vanilla kernel. >+This patchset considered to be more stable and security supported by upstream, >+that why they suggested us to use it. But note: RHEL5 patchset is very fragile >+and fails to build in many configurations so if you have problems use config >+files from openvz team http://wiki.openvz.org/Download/kernel/rhel5/${OVZ_KERNEL}" >+ >+K_EXTRAEWARN="This kernel is stable only when built with gcc-4.1.x and is known >+to oops in random places if built with newer compilers."
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 285998
: 204959