diff options
author | Ben White | 2017-11-26 10:22:54 +0100 |
---|---|---|
committer | Ben White | 2017-11-26 10:22:54 +0100 |
commit | fa7bc6621a55852893097df4d1e877469d80add0 (patch) | |
tree | d0a452a9d80bfcdcf4af712c15846ebcd98ee838 | |
parent | 889dc3e310659f3f6fddc49cb8cca39945390968 (diff) | |
download | aur-fa7bc6621a55852893097df4d1e877469d80add0.tar.gz |
Working on a clean install of 12.5.8
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 6 | ||||
-rw-r--r-- | vmmon-12.5.8-4.13.12.patch | 62 | ||||
-rw-r--r-- | vmnet-12.5.8-4.13.12.patch | 17 | ||||
-rw-r--r-- | vmware-patch.sh | 7 |
5 files changed, 82 insertions, 16 deletions
@@ -1,7 +1,7 @@ pkgbase = vmware-patch pkgdesc = A post-install configuration solution for VMware Workstation (Pro) and Player (Plus and Pro) pkgver = 14.0.0 - pkgrel = 4 + pkgrel = 5 url = https://wiki.archlinux.org/index.php/VMware#Configuration install = vmware-patch.install arch = i686 @@ -45,7 +45,7 @@ pkgbase = vmware-patch source = vmnet-10.0.4-3.14.patch source = vsock-10.0.4-3.14.patch source = vmnet-10.0.1-3.13.patch - md5sums = f116133678419f2281c59e390e42152e + md5sums = 5242a190e20e6366fd90a745a2b8410c md5sums = ba054b375308442d43a408dbae5e9401 md5sums = ca1382966804d694894539c7bcac6bbb md5sums = c12e765985b324585a548718a6ac9b43 @@ -54,7 +54,7 @@ pkgbase = vmware-patch md5sums = 3c165edb6847fc9bfa04657f346ac4cc md5sums = eca2542e4c484ea2ca06b7e9c065b8af md5sums = ced58cf32a21adfe21d612366c52116a - md5sums = dc020c9dea90f28a69c8957a482f6c12 + md5sums = 05932f9797d1c3cca52f4d523d6f759d md5sums = 3c165edb6847fc9bfa04657f346ac4cc md5sums = eca2542e4c484ea2ca06b7e9c065b8af md5sums = a2c3e2bbbe6dcbf66737a5e33df5b892 @@ -3,7 +3,7 @@ pkgname=vmware-patch pkgver=14.0.0 -pkgrel=4 +pkgrel=5 pkgdesc="A post-install configuration solution for VMware Workstation (Pro) and Player (Plus and Pro)" arch=('i686' 'x86_64') url="https://wiki.archlinux.org/index.php/VMware#Configuration" @@ -70,7 +70,7 @@ package() { } # Generated using 'updpkgsums' -md5sums=('f116133678419f2281c59e390e42152e' +md5sums=('5242a190e20e6366fd90a745a2b8410c' 'ba054b375308442d43a408dbae5e9401' 'ca1382966804d694894539c7bcac6bbb' 'c12e765985b324585a548718a6ac9b43' @@ -79,7 +79,7 @@ md5sums=('f116133678419f2281c59e390e42152e' '3c165edb6847fc9bfa04657f346ac4cc' 'eca2542e4c484ea2ca06b7e9c065b8af' 'ced58cf32a21adfe21d612366c52116a' - 'dc020c9dea90f28a69c8957a482f6c12' + '05932f9797d1c3cca52f4d523d6f759d' '3c165edb6847fc9bfa04657f346ac4cc' 'eca2542e4c484ea2ca06b7e9c065b8af' 'a2c3e2bbbe6dcbf66737a5e33df5b892' diff --git a/vmmon-12.5.8-4.13.12.patch b/vmmon-12.5.8-4.13.12.patch new file mode 100644 index 000000000000..756fa66fa3cc --- /dev/null +++ b/vmmon-12.5.8-4.13.12.patch @@ -0,0 +1,62 @@ +diff --git a/vmmon-only/linux/hostif.c b/vmmon-only/linux/hostif.c +--- vmmon-only/linux/hostif.c ++++ vmmon-only/linux/hostif.c +@@ -99,6 +99,37 @@ + #include "vmmonInt.h" + #include "versioned_atomic.h" + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0) ++#define global_zone_page_state global_page_state ++#endif ++ ++static unsigned long get_nr_slab_unreclaimable(void) ++{ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 13, 0) ++ return global_node_page_state(NR_SLAB_UNRECLAIMABLE); ++#else ++ return global_page_state(NR_SLAB_UNRECLAIMABLE); ++#endif ++} ++ ++static unsigned long get_nr_unevictable(void) ++{ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0) ++ return global_node_page_state(NR_UNEVICTABLE); ++#else ++ return global_page_state(NR_UNEVICTABLE); ++#endif ++} ++ ++static unsigned long get_nr_anon_mapped(void) ++{ ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0) ++ return global_node_page_state(NR_ANON_MAPPED); ++#else ++ return global_page_state(NR_ANON_PAGES); ++#endif ++} ++ + /* + * Determine if we can use high resolution timers. + */ +@@ -1594,16 +1625,11 @@ HostIF_EstimateLockedPageLimit(const VMDriver* vm, // IN + unsigned int reservedPages = MEMDEFAULTS_MIN_HOST_PAGES; + unsigned int hugePages = (vm == NULL) ? 0 : + BYTES_2_PAGES(vm->memInfo.hugePageBytes); +- unsigned int lockedPages = global_page_state(NR_PAGETABLE) + +- global_page_state(NR_SLAB_UNRECLAIMABLE) + +- global_page_state(NR_UNEVICTABLE) + ++ unsigned int lockedPages = global_zone_page_state(NR_PAGETABLE) + ++ get_nr_slab_unreclaimable() + ++ get_nr_unevictable() + + hugePages + reservedPages; +- unsigned int anonPages = +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0) +- global_page_state(NR_ANON_MAPPED); +-#else +- global_page_state(NR_ANON_PAGES); +-#endif ++ unsigned int anonPages = get_nr_anon_mapped(); + unsigned int swapPages = BYTES_2_PAGES(linuxState.swapSize); + + if (anonPages > swapPages) { diff --git a/vmnet-12.5.8-4.13.12.patch b/vmnet-12.5.8-4.13.12.patch index bede505655ca..ccbac9721fd4 100644 --- a/vmnet-12.5.8-4.13.12.patch +++ b/vmnet-12.5.8-4.13.12.patch @@ -1,14 +1,13 @@ -diff --git a/vmnet-only/bridge.c b/vmnet-only/bridge.c -index 8cdaf11..e3de9f2 100644 +diff --git a/bridge.c b/bridge.c2 +index 8cdaf11..83ae152 100644 --- vmnet-only/bridge.c +++ vmnet-only/bridge.c @@ -636,7 +636,7 @@ VNetBridgeReceiveFromVNet(VNetJack *this, // IN: jack - unsigned long flags; - int i; + unsigned long flags; + int i; -- atomic_inc(&clone->users); -+ clone=skb_get(clone); +- atomic_inc(&clone->users); ++ clone = skb_get(clone); - clone->dev = dev; - clone->protocol = eth_type_trans(clone, dev); - + clone->dev = dev; + clone->protocol = eth_type_trans(clone, dev); diff --git a/vmware-patch.sh b/vmware-patch.sh index 2c9e4421ed9d..0e8d4ee28e0f 100644 --- a/vmware-patch.sh +++ b/vmware-patch.sh @@ -152,11 +152,16 @@ for kernel in ${kernels[@]}; do fi # Is product version not lower and kernel version not higher in patch name? - if (( $(vercmp "$ver_patch" "$ver2") <= 0 )) && (( $(vercmp "$kernel_patch" "$kernel_major") >= 0 )); then + if (( $(vercmp "$ver_patch" "$ver2") == 0 )) && (( $(vercmp "$kernel_patch" "$kernel_major") >= 0 )); then + printf 'Patch: %s, %s\n' "$ver_patch" "$ver2" + printf 'Kernel: %s, %s\n' "$kernel_patch" "$kernel_major" patches+=("$patch") fi done + # Debug print to see patches before application. + printf '%s\n' "${patches[@]}" + # Patch # 1) Make sure we can build # 2) &>/dev/null: hide all output (STDIN/STDERR) |