diff options
Diffstat (limited to 'main/linux-vserver')
-rw-r--r-- | main/linux-vserver/0004-staging-hv-fix-netvsc-sleeping-while-atomic.patch | 42 | ||||
-rw-r--r-- | main/linux-vserver/APKBUILD | 14 |
2 files changed, 50 insertions, 6 deletions
diff --git a/main/linux-vserver/0004-staging-hv-fix-netvsc-sleeping-while-atomic.patch b/main/linux-vserver/0004-staging-hv-fix-netvsc-sleeping-while-atomic.patch new file mode 100644 index 000000000..3ba0a1e31 --- /dev/null +++ b/main/linux-vserver/0004-staging-hv-fix-netvsc-sleeping-while-atomic.patch @@ -0,0 +1,42 @@ +Subject: [PATCH] staging: hv: fix netvsc sleeping while atomic +Date: Fri, 17 Dec 2010 11:40:24 +0200 +Message-Id: <1292578824-14408-1-git-send-email-timo.teras@iki.fi> +X-Mailer: git-send-email 1.7.1 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +X-Virus-Scanned: ClamAV using ClamSMTP +Status: O +Content-Length: 845 +Lines: 29 + +The channel callbacks are called directly from vmbus_event_dpc +which runs in tasklet context. These callbacks need to use +GFP_ATOMIC. + +Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=16701 + +Cc: Hank Janssen <hjanssen@microsoft.com> +Cc: Haiyang Zhang <haiyangz@microsoft.com> +Signed-off-by: Timo Teräs <timo.teras@iki.fi> +--- + drivers/staging/hv/netvsc.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/drivers/staging/hv/netvsc.c b/drivers/staging/hv/netvsc.c +index 8022781..3784923 100644 +--- a/drivers/staging/hv/netvsc.c ++++ b/drivers/staging/hv/netvsc.c +@@ -1236,7 +1236,7 @@ static void NetVscOnChannelCallback(void *Context) + /* ASSERT(device); */ + + packet = kzalloc(NETVSC_PACKET_SIZE * sizeof(unsigned char), +- GFP_KERNEL); ++ GFP_ATOMIC); + if (!packet) + return; + buffer = packet; +-- +1.7.1 + + diff --git a/main/linux-vserver/APKBUILD b/main/linux-vserver/APKBUILD index 67657daa9..de2b21846 100644 --- a/main/linux-vserver/APKBUILD +++ b/main/linux-vserver/APKBUILD @@ -5,7 +5,7 @@ pkgname=linux-${_flavor} pkgver=2.6.35.9 _kernver=2.6.35 -pkgrel=1 +pkgrel=3 pkgdesc="Linux kernel with vserver" url="http://linux-vserver.org/" depends="mkinitfs linux-firmware" @@ -16,6 +16,7 @@ install= source="ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-$_kernver.tar.bz2 ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-$pkgver.bz2 0001-Staging-hv-fix-sleeping-while-atomic-issue.patch + 0004-staging-hv-fix-netvsc-sleeping-while-atomic.patch patch-2.6.35.9-vs2.3.0.36.33.diff setlocalversion.patch kernelconfig.x86 @@ -45,7 +46,7 @@ prepare() { done mkdir -p "$srcdir"/build - cp "$srcdir"/$_config "$srcdir"/build/.config + cp "$srcdir"/$_config "$srcdir"/build/.config || return 1 make -C "$srcdir"/linux-$_kernver O="$srcdir"/build HOSTCC="${CC:-gcc}" \ silentoldconfig } @@ -54,7 +55,7 @@ prepare() { menuconfig() { cd "$srcdir"/build make menuconfig - cp .config "$startdir"/$_config + cp .config "$startdir"/$_config || return 1 } build() { @@ -62,15 +63,15 @@ build() { make CC="${CC:-gcc}" \ KBUILD_BUILD_VERSION="$((pkgrel + 1 ))-Alpine" \ || return 1 - } package() { cd "$srcdir"/build mkdir -p "$pkgdir"/boot "$pkgdir"/lib/modules - make modules_install install \ + make -j1 modules_install install \ INSTALL_MOD_PATH="$pkgdir" \ - INSTALL_PATH="$pkgdir"/boot + INSTALL_PATH="$pkgdir"/boot \ + || return 1 rm -f "$pkgdir"/lib/modules/${_abi_release}/build \ "$pkgdir"/lib/modules/${_abi_release}/source @@ -129,6 +130,7 @@ dev() { md5sums="091abeb4684ce03d1d936851618687b6 linux-2.6.35.tar.bz2 eca407cf4872ad77ae23adc8242389c4 patch-2.6.35.9.bz2 648d8b477248f233c318a3b7a961febf 0001-Staging-hv-fix-sleeping-while-atomic-issue.patch +7cae2d1e1947fa57d7aaaf31c649471c 0004-staging-hv-fix-netvsc-sleeping-while-atomic.patch 915974abb0ad49337b91f0f487593fd2 patch-2.6.35.9-vs2.3.0.36.33.diff 8c224ba0cdf0aa572c7eb50379435be4 setlocalversion.patch 10b1e713ce4422e69e1c96ba78feb7a9 kernelconfig.x86 |