packages: kernel/kernel-grsec_fixes.patch - fix for vserver

arekm arekm at pld-linux.org
Fri Jul 31 13:50:17 CEST 2009


Author: arekm                        Date: Fri Jul 31 11:50:17 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
- fix for vserver

---- Files affected:
packages/kernel:
   kernel-grsec_fixes.patch (1.2 -> 1.3) 

---- Diffs:

================================================================
Index: packages/kernel/kernel-grsec_fixes.patch
diff -u packages/kernel/kernel-grsec_fixes.patch:1.2 packages/kernel/kernel-grsec_fixes.patch:1.3
--- packages/kernel/kernel-grsec_fixes.patch:1.2	Tue Mar 31 14:04:23 2009
+++ packages/kernel/kernel-grsec_fixes.patch	Fri Jul 31 13:50:12 2009
@@ -147,3 +147,43 @@
  
  	return -EACCES;
 
+--- linux-2.6.30/kernel/vserver/context.c~	2009-07-31 12:07:52.365267958 +0200
++++ linux-2.6.30/kernel/vserver/context.c	2009-07-31 12:43:04.991723596 +0200
+@@ -122,7 +122,7 @@
+ 	// preconfig fs entries
+ 	for (index = 0; index < VX_SPACES; index++) {
+ 		write_lock(&init_fs.lock);
+-		init_fs.users++;
++		atomic_inc(&init_fs.users);
+ 		write_unlock(&init_fs.lock);
+ 		new->vx_fs[index] = &init_fs;
+ 	}
+@@ -196,7 +196,7 @@
+ 
+ 		fs = xchg(&vxi->vx_fs[index], NULL);
+ 		write_lock(&fs->lock);
+-		kill = !--fs->users;
++		kill = !atomic_dec_return(&fs->users);
+ 		write_unlock(&fs->lock);
+ 		if (kill)
+ 			free_fs_struct(fs);
+--- linux-2.6.30/kernel/vserver/space.c~	2009-07-31 12:07:52.398601243 +0200
++++ linux-2.6.30/kernel/vserver/space.c	2009-07-31 12:47:48.638394441 +0200
+@@ -220,7 +220,7 @@
+ 	if (mask & CLONE_FS) {
+ 		write_lock(&fs_cur->lock);
+ 		current->fs = fs;
+-		kill = !--fs_cur->users;
++		kill = !atomic_dec_return(&fs_cur->users);
+ 		write_unlock(&fs_cur->lock);
+ 	}
+ 
+@@ -278,7 +278,7 @@
+ 	if (mask & CLONE_FS) {
+ 		write_lock(&fs_vxi->lock);
+ 		vxi->vx_fs[index] = fs;
+-		kill = !--fs_vxi->users;
++		kill = !atomic_dec_return(&fs_vxi->users);
+ 		write_unlock(&fs_vxi->lock);
+ 	}
+ 
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kernel/kernel-grsec_fixes.patch?r1=1.2&r2=1.3&f=u



More information about the pld-cvs-commit mailing list