summaryrefslogtreecommitdiff
path: root/community/open-vm-tools-modules
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-12-29 02:13:48 -0800
committerroot <root@rshg054.dnsready.net>2012-12-29 02:13:48 -0800
commit5dd7ed82e788ebad2e920e0f2db7468cc6547cfe (patch)
treef467412e09912ababcd8fe6c05193d829f514dcd /community/open-vm-tools-modules
parent3009e8addb4a894329bf8ab3e8fb763361833978 (diff)
Sat Dec 29 02:10:20 PST 2012
Diffstat (limited to 'community/open-vm-tools-modules')
-rw-r--r--community/open-vm-tools-modules/PKGBUILD52
-rw-r--r--community/open-vm-tools-modules/linux-3.6-build-fix.patch63
-rw-r--r--community/open-vm-tools-modules/modprobe.conf3
-rw-r--r--community/open-vm-tools-modules/open-vm-tools-modules.install14
4 files changed, 101 insertions, 31 deletions
diff --git a/community/open-vm-tools-modules/PKGBUILD b/community/open-vm-tools-modules/PKGBUILD
index 082df1943..df6d75ea6 100644
--- a/community/open-vm-tools-modules/PKGBUILD
+++ b/community/open-vm-tools-modules/PKGBUILD
@@ -1,10 +1,11 @@
-# $Id: PKGBUILD 72483 2012-06-15 13:20:41Z spupykin $
+# $Id: PKGBUILD 80262 2012-11-18 19:27:05Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Krzysztof Raczkowski <raczkow@gmail.com>
pkgname=open-vm-tools-modules
-pkgver=2012.05.21
-_pkgsubver=724730
+epoch=1
+pkgver=9.2.2
+_pkgsubver=893683
pkgrel=1
pkgdesc="kernel modules for the open source implementation of VMware Tools"
arch=('i686' 'x86_64')
@@ -13,38 +14,45 @@ license=('GPL')
makedepends=('libdnet' 'icu' 'uriparser' 'linux-headers')
depends=("linux")
install=$pkgname.install
-options=('!strip')
+options=('!strip' '!makeflags')
source=("http://downloads.sourceforge.net/open-vm-tools/open-vm-tools-$pkgver-${_pkgsubver}.tar.gz"
- "modprobe.conf")
-md5sums=('91affb5b23db8abceff930613845f434'
- 'ac9b8e3cb798f5056ca92767ec705117')
+ "modprobe.conf"
+ "linux-3.6-build-fix.patch")
+md5sums=('7af505681d736d4c9ee6493b1166689f'
+ 'bc5518489077e91655489bd04b868584'
+ 'd9ffaf628837ea6a216b96dac69705e6')
build() {
- _kernver=`pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -`
- KERNEL_RELEASE=`cat /lib/modules/extramodules-3.${_kernver}-ARCH/version`
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ KERNEL_RELEASE=$(cat /usr/lib/modules/extramodules-3.${_kernver}-ARCH/version)
cd "$srcdir/open-vm-tools-${pkgver}-${_pkgsubver}"
+
sed -i 's|proc-3.2.8|procps|g' configure
- [ $NOEXTRACT -eq 1 ] || ./configure --prefix=/usr \
- --without-x --with-kernel-release=$KERNEL_RELEASE
+# patch -p1 <$srcdir/linux-3.6-build-fix.patch
+
+ [ $NOEXTRACT -eq 1 ] || ./configure \
+ --prefix=/usr \
+ --without-x \
+ --with-linuxdir=/usr/lib/modules/$KERNEL_RELEASE
- cd modules
- make modules -j1
+ make -C modules modules
}
package() {
- _kernver=`pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -`
- depends=("linux>=3.${_kernver}" "linux<3.`expr ${_kernver} + 1`")
- KERNEL_VERSION=`cat /lib/modules/extramodules-3.${_kernver}-ARCH/version`
+ _kernver=$(pacman -Q linux | cut -d . -f 2 | cut -f 1 -d -)
+ depends=("linux>=3.${_kernver}" "linux<3.$(expr ${_kernver} + 1)")
+ KERNEL_VERSION=$(cat /usr/lib/modules/extramodules-3.${_kernver}-ARCH/version)
msg "Kernel = $KERNEL_VERSION"
cd "$srcdir/open-vm-tools-${pkgver}-${_pkgsubver}"
- mkdir -p $pkgdir/lib/modules/extramodules-3.${_kernver}-ARCH/
- for MOD in `find -type f -name '*.ko'`; do
- install -Dm644 $MOD $pkgdir/lib/modules/extramodules-3.${_kernver}-ARCH/
- done
- gzip $pkgdir/lib/modules/extramodules-3.${_kernver}-ARCH/*.ko
+ mkdir -p $pkgdir/usr/lib/modules/extramodules-3.${_kernver}-ARCH/
+
+ find -type f -name '*.ko' \
+ -exec install -t "$pkgdir/usr/lib/modules/extramodules-3.$_kernver-ARCH" {} +
+
+ gzip "$pkgdir/usr/lib/modules/extramodules-3.$_kernver-ARCH"/*.ko
- install -D -m 644 ${srcdir}/modprobe.conf ${pkgdir}/etc/modprobe.d/${pkgname}.conf
+ install -D -m 644 ${srcdir}/modprobe.conf ${pkgdir}/usr/lib/modprobe.d/${pkgname}.conf
sed -i "s|extramodules-.*-ARCH|extramodules-3.${_kernver}-ARCH|" $startdir/$pkgname.install
}
diff --git a/community/open-vm-tools-modules/linux-3.6-build-fix.patch b/community/open-vm-tools-modules/linux-3.6-build-fix.patch
new file mode 100644
index 000000000..f012a3ff1
--- /dev/null
+++ b/community/open-vm-tools-modules/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;
diff --git a/community/open-vm-tools-modules/modprobe.conf b/community/open-vm-tools-modules/modprobe.conf
index b72fcc61a..6a1a9ca53 100644
--- a/community/open-vm-tools-modules/modprobe.conf
+++ b/community/open-vm-tools-modules/modprobe.conf
@@ -1,2 +1 @@
-#VMware net driver
-install pcnet32 /sbin/modprobe -q --ignore-install vmxnet; /sbin/modprobe -q --ignore-install pcnet32 ; /bin/true;
+softdep pcnet32 pre: vmxnet
diff --git a/community/open-vm-tools-modules/open-vm-tools-modules.install b/community/open-vm-tools-modules/open-vm-tools-modules.install
index b8f6dd618..e8ad0e85d 100644
--- a/community/open-vm-tools-modules/open-vm-tools-modules.install
+++ b/community/open-vm-tools-modules/open-vm-tools-modules.install
@@ -1,7 +1,7 @@
post_install() {
- EXTRAMODULES='extramodules-3.3-ARCH'
- depmod $(cat /lib/modules/$EXTRAMODULES/version)
- echo ">>> Enabling vmxnet driver in /etc/modprobe.d/open-vm-tools-modules.conf"
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
+ echo ">>> Enabling vmxnet driver in /usr/lib/modprobe.d/open-vm-tools-modules.conf"
echo ">>> (this will disable pcnet32 driver)"
echo ">>>"
echo ">>> If vmxnet driver doesn't handle your NIC, you have to manually"
@@ -10,13 +10,13 @@ post_install() {
}
post_upgrade() {
- EXTRAMODULES='extramodules-3.3-ARCH'
- depmod $(cat /lib/modules/$EXTRAMODULES/version)
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
}
post_remove() {
- EXTRAMODULES='extramodules-3.3-ARCH'
- depmod $(cat /lib/modules/$EXTRAMODULES/version)
+ EXTRAMODULES='extramodules-3.6-ARCH'
+ depmod $(cat /usr/lib/modules/$EXTRAMODULES/version)
echo ">>>"
echo ">>> Remember to un-blacklist pcnet32 driver"
echo ">>>"