fix potential nfs4 issue
This commit is contained in:
		
							parent
							
								
									1b8d0cd32a
								
							
						
					
					
						commit
						da0ccee110
					
				
							
								
								
									
										34
									
								
								3.4.2-rpc_pipefs.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								3.4.2-rpc_pipefs.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,34 @@
 | 
				
			|||||||
 | 
					diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c
 | 
				
			||||||
 | 
					index 0404047..21fde99 100644
 | 
				
			||||||
 | 
					--- a/net/sunrpc/rpc_pipe.c
 | 
				
			||||||
 | 
					+++ b/net/sunrpc/rpc_pipe.c
 | 
				
			||||||
 | 
					@@ -71,7 +71,9 @@ static void rpc_purge_list(wait_queue_head_t *waitq, struct list_head *head,
 | 
				
			||||||
 | 
					 		msg->errno = err;
 | 
				
			||||||
 | 
					 		destroy_msg(msg);
 | 
				
			||||||
 | 
					 	} while (!list_empty(head));
 | 
				
			||||||
 | 
					-	wake_up(waitq);
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					+	if (waitq)
 | 
				
			||||||
 | 
					+		wake_up(waitq);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 static void
 | 
				
			||||||
 | 
					@@ -91,11 +93,9 @@ rpc_timeout_upcall_queue(struct work_struct *work)
 | 
				
			||||||
 | 
					 	}
 | 
				
			||||||
 | 
					 	dentry = dget(pipe->dentry);
 | 
				
			||||||
 | 
					 	spin_unlock(&pipe->lock);
 | 
				
			||||||
 | 
					-	if (dentry) {
 | 
				
			||||||
 | 
					-		rpc_purge_list(&RPC_I(dentry->d_inode)->waitq,
 | 
				
			||||||
 | 
					-			       &free_list, destroy_msg, -ETIMEDOUT);
 | 
				
			||||||
 | 
					-		dput(dentry);
 | 
				
			||||||
 | 
					-	}
 | 
				
			||||||
 | 
					+	rpc_purge_list(dentry ? &RPC_I(dentry->d_inode)->waitq : NULL,
 | 
				
			||||||
 | 
					+			&free_list, destroy_msg, -ETIMEDOUT);
 | 
				
			||||||
 | 
					+	dput(dentry);
 | 
				
			||||||
 | 
					 }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 ssize_t rpc_pipe_generic_upcall(struct file *filp, struct rpc_pipe_msg *msg,
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					1.7.7.6
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  
 | 
				
			||||||
							
								
								
									
										10
									
								
								PKGBUILD
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								PKGBUILD
									
									
									
									
									
								
							@ -8,7 +8,7 @@ pkgname=('linux' 'linux-headers' 'linux-docs') # Build stock -ARCH kernel
 | 
				
			|||||||
_kernelname=${pkgname#linux}
 | 
					_kernelname=${pkgname#linux}
 | 
				
			||||||
_basekernel=3.4
 | 
					_basekernel=3.4
 | 
				
			||||||
pkgver=${_basekernel}.2
 | 
					pkgver=${_basekernel}.2
 | 
				
			||||||
pkgrel=1
 | 
					pkgrel=2
 | 
				
			||||||
arch=('i686' 'x86_64')
 | 
					arch=('i686' 'x86_64')
 | 
				
			||||||
url="http://www.kernel.org/"
 | 
					url="http://www.kernel.org/"
 | 
				
			||||||
license=('GPL2')
 | 
					license=('GPL2')
 | 
				
			||||||
@ -22,7 +22,8 @@ source=("http://www.kernel.org/pub/linux/kernel/v3.x/linux-3.4.tar.xz"
 | 
				
			|||||||
        "${pkgname}.preset"
 | 
					        "${pkgname}.preset"
 | 
				
			||||||
        'fix-acerhdf-1810T-bios.patch'
 | 
					        'fix-acerhdf-1810T-bios.patch'
 | 
				
			||||||
        'change-default-console-loglevel.patch'
 | 
					        'change-default-console-loglevel.patch'
 | 
				
			||||||
        'i915-fix-ghost-tv-output.patch')
 | 
					        'i915-fix-ghost-tv-output.patch'
 | 
				
			||||||
 | 
					        '3.4.2-rpc_pipefs.patch')
 | 
				
			||||||
md5sums=('967f72983655e2479f951195953e8480'
 | 
					md5sums=('967f72983655e2479f951195953e8480'
 | 
				
			||||||
         'ac52d3d82c20c7e80740fc5fb00b6ed4'
 | 
					         'ac52d3d82c20c7e80740fc5fb00b6ed4'
 | 
				
			||||||
         '3f2c307c8ffae67f60c13ef69af8364a'
 | 
					         '3f2c307c8ffae67f60c13ef69af8364a'
 | 
				
			||||||
@ -30,7 +31,8 @@ md5sums=('967f72983655e2479f951195953e8480'
 | 
				
			|||||||
         'eb14dcfd80c00852ef81ded6e826826a'
 | 
					         'eb14dcfd80c00852ef81ded6e826826a'
 | 
				
			||||||
         '38c1fd4a1f303f1f6c38e7f082727e2f'
 | 
					         '38c1fd4a1f303f1f6c38e7f082727e2f'
 | 
				
			||||||
         '9d3c56a4b999c8bfbd4018089a62f662'
 | 
					         '9d3c56a4b999c8bfbd4018089a62f662'
 | 
				
			||||||
         '263725f20c0b9eb9c353040792d644e5')
 | 
					         '263725f20c0b9eb9c353040792d644e5'
 | 
				
			||||||
 | 
					         '18b3877f9014c8cdd5eb8f6a9e8a3a3a')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
build() {
 | 
					build() {
 | 
				
			||||||
  cd "${srcdir}/linux-${_basekernel}"
 | 
					  cd "${srcdir}/linux-${_basekernel}"
 | 
				
			||||||
@ -38,6 +40,8 @@ build() {
 | 
				
			|||||||
  # add upstream patch
 | 
					  # add upstream patch
 | 
				
			||||||
  patch -p1 -i "${srcdir}/patch-${pkgver}"
 | 
					  patch -p1 -i "${srcdir}/patch-${pkgver}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  # fix nfs4 regression
 | 
				
			||||||
 | 
					  patch -Np1 -i "${srcdir}/3.4.2-rpc_pipefs.patch"
 | 
				
			||||||
  # add latest fixes from stable queue, if needed
 | 
					  # add latest fixes from stable queue, if needed
 | 
				
			||||||
  # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
 | 
					  # http://git.kernel.org/?p=linux/kernel/git/stable/stable-queue.git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -2,7 +2,7 @@
 | 
				
			|||||||
# arg 2:  the old package version
 | 
					# arg 2:  the old package version
 | 
				
			||||||
 | 
					
 | 
				
			||||||
KERNEL_NAME=
 | 
					KERNEL_NAME=
 | 
				
			||||||
KERNEL_VERSION=3.4.2-1-ARCH
 | 
					KERNEL_VERSION=3.4.2-2-ARCH
 | 
				
			||||||
 | 
					
 | 
				
			||||||
post_install () {
 | 
					post_install () {
 | 
				
			||||||
  # updating module dependencies
 | 
					  # updating module dependencies
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user