Author: waldi
Date: Sat Mar 31 20:42:54 2007
New Revision: 8408

Added:
   dists/etch/linux-2.6/debian/patches/bugfix/all/vserver/cacct-overflow.patch
   dists/etch/linux-2.6/debian/patches/bugfix/all/vserver/locks.patch
   dists/etch/linux-2.6/debian/patches/series/13-extra
Modified:
   dists/etch/linux-2.6/debian/changelog
Log:
* debian/changelog: Update.
* debian/patches/bugfix/all/vserver/cacct-overflow.patch,
  debian/patches/bugfix/all/vserver/locks.patch: Add.
* debian/patches/series/13-extra: Add patches.


Modified: dists/etch/linux-2.6/debian/changelog
==============================================================================
--- dists/etch/linux-2.6/debian/changelog       (original)
+++ dists/etch/linux-2.6/debian/changelog       Sat Mar 31 20:42:54 2007
@@ -1,3 +1,10 @@
+linux-2.6 (2.6.18.dfsg.1-13) UNRELEASED; urgency=low
+
+  * [vserver] Fix overflow in network accounting. (closes: #412132)
+  * [vserver] Fix lock accouting.
+
+ -- Bastian Blank <[EMAIL PROTECTED]>  Sat, 31 Mar 2007 21:04:16 +0200
+
 linux-2.6 (2.6.18.dfsg.1-12) unstable; urgency=low
 
   [ Steve Langasek ]

Added: 
dists/etch/linux-2.6/debian/patches/bugfix/all/vserver/cacct-overflow.patch
==============================================================================
--- (empty file)
+++ dists/etch/linux-2.6/debian/patches/bugfix/all/vserver/cacct-overflow.patch 
Sat Mar 31 20:42:54 2007
@@ -0,0 +1,57 @@
+--- linux-2.6.16.43-vs2.0.3-rc1/include/linux/vs_socket.h      2007-03-28 
02:23:16 +0200
++++ linux-2.6.16.43-vs2.0.3-rc2/include/linux/vs_socket.h      2007-03-17 
16:20:04 +0100
+@@ -36,8 +36,8 @@ static inline void __vx_acc_sock(struct 
+       if (vxi) {
+               int type = vx_sock_type(family);
+ 
+-              atomic_inc(&vxi->cacct.sock[type][pos].count);
+-              atomic_add(size, &vxi->cacct.sock[type][pos].total);
++              atomic_long_inc(&vxi->cacct.sock[type][pos].count);
++              atomic_long_add(size, &vxi->cacct.sock[type][pos].total);
+       }
+ }
+ 
+--- linux-2.6.16.43-vs2.0.3-rc1/include/linux/vserver/cvirt_def.h      
2007-03-28 02:23:16 +0200
++++ linux-2.6.16.43-vs2.0.3-rc2/include/linux/vserver/cvirt_def.h      
2007-03-17 16:20:04 +0100
+@@ -62,8 +62,8 @@ struct _vx_cvirt {
+ };
+ 
+ struct _vx_sock_acc {
+-      atomic_t count;
+-      atomic_t total;
++      atomic_long_t count;
++      atomic_long_t total;
+ };
+ 
+ /* context sub struct */
+--- linux-2.6.16.43-vs2.0.3-rc1/kernel/vserver/cvirt_init.h    2007-03-28 
02:23:17 +0200
++++ linux-2.6.16.43-vs2.0.3-rc2/kernel/vserver/cvirt_init.h    2007-03-17 
16:20:04 +0100
+@@ -68,8 +68,8 @@ static inline void vx_info_init_cacct(st
+ 
+       for (i=0; i<5; i++) {
+               for (j=0; j<3; j++) {
+-                      atomic_set(&cacct->sock[i][j].count, 0);
+-                      atomic_set(&cacct->sock[i][j].total, 0);
++                      atomic_long_set(&cacct->sock[i][j].count, 0);
++                      atomic_long_set(&cacct->sock[i][j].total, 0);
+               }
+       }
+ }
+--- linux-2.6.16.43-vs2.0.3-rc1/kernel/vserver/cvirt_proc.h    2007-03-28 
02:23:17 +0200
++++ linux-2.6.16.43-vs2.0.3-rc2/kernel/vserver/cvirt_proc.h    2007-03-17 
16:20:04 +0100
+@@ -58,13 +58,13 @@ static inline int vx_info_proc_cvirt(str
+ 
+ static inline long vx_sock_count(struct _vx_cacct *cacct, int type, int pos)
+ {
+-      return atomic_read(&cacct->sock[type][pos].count);
++      return atomic_long_read(&cacct->sock[type][pos].count);
+ }
+ 
+ 
+ static inline long vx_sock_total(struct _vx_cacct *cacct, int type, int pos)
+ {
+-      return atomic_read(&cacct->sock[type][pos].total);
++      return atomic_long_read(&cacct->sock[type][pos].total);
+ }
+ 
+ static inline int vx_info_proc_cacct(struct _vx_cacct *cacct, char *buffer)

Added: dists/etch/linux-2.6/debian/patches/bugfix/all/vserver/locks.patch
==============================================================================
--- (empty file)
+++ dists/etch/linux-2.6/debian/patches/bugfix/all/vserver/locks.patch  Sat Mar 
31 20:42:54 2007
@@ -0,0 +1,30 @@
+--- linux-2.6.16.43-vs2.0.3-rc1/fs/locks.c     2007-03-28 02:23:15 +0200
++++ linux-2.6.16.43-vs2.0.3-rc2/fs/locks.c     2007-03-17 16:20:04 +0100
+@@ -759,6 +759,7 @@ static int flock_lock_file(struct file *
+       new_fl = locks_alloc_lock();
+       if (new_fl == NULL)
+               goto out;
++      new_fl->fl_xid = -1;
+       /*
+        * If a higher-priority process was blocked on the old file lock,
+        * give it the opportunity to lock the file.
+@@ -780,8 +781,8 @@ static int flock_lock_file(struct file *
+       if (request->fl_flags & FL_ACCESS)
+               goto out;
+       locks_copy_lock(new_fl, request);
+-      vx_locks_inc(new_fl);
+       locks_insert_lock(&inode->i_flock, new_fl);
++      vx_locks_inc(new_fl);
+       new_fl = NULL;
+       error = 0;
+ 
+@@ -1383,8 +1384,8 @@ static int __setlease(struct file *filp,
+               goto out;
+ 
+       locks_copy_lock(fl, lease);
+-
+       locks_insert_lock(before, fl);
++      vx_locks_inc(fl);
+ 
+       *flp = fl;
+       error = 0;

Added: dists/etch/linux-2.6/debian/patches/series/13-extra
==============================================================================
--- (empty file)
+++ dists/etch/linux-2.6/debian/patches/series/13-extra Sat Mar 31 20:42:54 2007
@@ -0,0 +1,2 @@
++ bugfix/all/vserver/cacct-overflow.patch  *_vserver *_xen-vserver
++ bugfix/all/vserver/locks.patch  *_vserver *_xen-vserver

_______________________________________________
Kernel-svn-changes mailing list
[email protected]
http://lists.alioth.debian.org/mailman/listinfo/kernel-svn-changes

Reply via email to