diff options
author | Natanael Copa <ncopa@alpinelinux.org> | 2012-10-17 13:04:10 +0000 |
---|---|---|
committer | Natanael Copa <ncopa@alpinelinux.org> | 2012-10-17 13:04:10 +0000 |
commit | 20dfa7dc7ee9f2d60efff67f8af391a856920af9 (patch) | |
tree | b543837ef42d5a2cc8968250674e3df3562afbe6 /main/open-vm-tools-grsec | |
parent | 2b43cae7d76365efd289ad0af195fd81e86c5264 (diff) | |
download | aports-20dfa7dc7ee9f2d60efff67f8af391a856920af9.tar.bz2 aports-20dfa7dc7ee9f2d60efff67f8af391a856920af9.tar.xz |
main/open-vm-tools-grsec: rebuild against 3.6.2 kernel
Diffstat (limited to 'main/open-vm-tools-grsec')
-rw-r--r-- | main/open-vm-tools-grsec/APKBUILD | 6 | ||||
-rw-r--r-- | main/open-vm-tools-grsec/linux-3.6-build-fix.patch | 63 |
2 files changed, 67 insertions, 2 deletions
diff --git a/main/open-vm-tools-grsec/APKBUILD b/main/open-vm-tools-grsec/APKBUILD index 1bea2172c..5e0a4318d 100644 --- a/main/open-vm-tools-grsec/APKBUILD +++ b/main/open-vm-tools-grsec/APKBUILD @@ -2,12 +2,12 @@ _flavor=grsec _realname=open-vm-tools -_kver=3.4.13 +_kver=3.6.2 _kpkgrel=0 _realver=9.2.0_p799703 _ver=${_realver/_p/-} -_mypkgrel=1 +_mypkgrel=0 # source open-vm-tools version if [ -f ../main/$_realname/APKBUILD ]; then @@ -38,6 +38,7 @@ subpackages="" depends="linux-${_flavor}=${_kernelver}" makedepends="glib-dev gettext-dev linux-${_flavor}-dev=${_kernelver}" source="http://downloads.sourceforge.net/project/open-vm-tools/open-vm-tools/stable-${_realver%.*}.x/open-vm-tools-${_ver}.tar.gz + linux-3.6-build-fix.patch vmware-modules.initd " # constify.patch @@ -80,4 +81,5 @@ package() { } md5sums="37341978a00a1568b898a8ce024f9da9 open-vm-tools-9.2.0-799703.tar.gz +d9ffaf628837ea6a216b96dac69705e6 linux-3.6-build-fix.patch afba2c3487d0b12cee80eb2f04b05ba1 vmware-modules.initd" diff --git a/main/open-vm-tools-grsec/linux-3.6-build-fix.patch b/main/open-vm-tools-grsec/linux-3.6-build-fix.patch new file mode 100644 index 000000000..f012a3ff1 --- /dev/null +++ b/main/open-vm-tools-grsec/linux-3.6-build-fix.patch @@ -0,0 +1,63 @@ +diff -wbBur open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/inode.c open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/inode.c +--- open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/inode.c 2012-05-23 00:12:52.000000000 +0400 ++++ open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/inode.c 2012-10-02 15:39:47.000000000 +0400 +@@ -1801,7 +1802,7 @@ + #else + if (mask & MAY_ACCESS) { /* For sys_access. */ + #endif +- struct list_head *pos; ++ struct hlist_node *pos; + int dcount = 0; + struct dentry *dentry = NULL; + +@@ -1817,7 +1818,7 @@ + #endif + + /* Find a dentry with valid d_count. Refer bug 587789. */ +- list_for_each(pos, &inode->i_dentry) { ++ list_for_each(pos, inode->i_dentry.first) { + dentry = list_entry(pos, struct dentry, d_alias); + #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 38) + dcount = atomic_read(&dentry->d_count); +diff -wbBur open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/page.c open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/page.c +--- open-vm-tools-2012.05.21-724730.org/modules/linux/vmhgfs/page.c 2012-05-23 00:12:52.000000000 +0400 ++++ open-vm-tools-2012.05.21-724730/modules/linux/vmhgfs/page.c 2012-10-02 15:41:38.000000000 +0400 +@@ -893,7 +893,7 @@ + */ + if ((offset >= currentFileSize) || + ((pageFrom == 0) && (offset + pageTo) >= currentFileSize)) { +- void *kaddr = kmap_atomic(page, KM_USER0); ++ void *kaddr = kmap_atomic(page); + + if (pageFrom) { + memset(kaddr, 0, pageFrom); +@@ -901,7 +901,7 @@ + if (pageTo < PAGE_CACHE_SIZE) { + memset(kaddr + pageTo, 0, PAGE_CACHE_SIZE - pageTo); + } +- kunmap_atomic(kaddr, KM_USER0); ++ kunmap_atomic(kaddr); + flush_dcache_page(page); + } + } +diff -wbBur open-vm-tools-2012.05.21-724730.org/modules/linux/vmsync/sync.c open-vm-tools-2012.05.21-724730/modules/linux/vmsync/sync.c +--- open-vm-tools-2012.05.21-724730.org/modules/linux/vmsync/sync.c 2012-05-23 00:12:52.000000000 +0400 ++++ open-vm-tools-2012.05.21-724730/modules/linux/vmsync/sync.c 2012-10-02 15:23:56.000000000 +0400 +@@ -162,7 +162,7 @@ + cancel_delayed_work(&state->thawTask); + list_for_each_safe(cur, tmp, &state->devices) { + dev = list_entry(cur, VmSyncBlockDevice, list); +- if (dev->sb != NULL && dev->sb->s_frozen != SB_UNFROZEN) { ++ if (dev->sb != NULL && dev->sb->s_writers.frozen != SB_UNFROZEN) { + thaw_bdev(dev->bdev, dev->sb); + atomic_dec(&gFreezeCount); + } +@@ -237,7 +237,7 @@ + * the superblock is already frozen. + */ + if (inode->i_sb->s_bdev == NULL || +- inode->i_sb->s_frozen != SB_UNFROZEN) { ++ inode->i_sb->s_writers.frozen != SB_UNFROZEN) { + result = (inode->i_sb->s_bdev == NULL) ? -EINVAL : -EALREADY; + compat_path_release(&nd); + goto exit; |