Whamcloud - gitweb
b=2681
authornic <nic>
Thu, 4 Mar 2004 23:15:20 +0000 (23:15 +0000)
committernic <nic>
Thu, 4 Mar 2004 23:15:20 +0000 (23:15 +0000)
r=jacob,adilger

update kernel series for hp_pnnl, add invalidate-show patch and update
ext3-delete_thread patch for this series

lustre/kernel_patches/patches/ext3-delete_thread-2.4.20-hp.patch
lustre/kernel_patches/patches/invalidate_show-2.4.20-hp.patch [new file with mode: 0644]
lustre/kernel_patches/series/hp-pnnl-2.4.20

index f91b8ff..d722b68 100644 (file)
@@ -5,10 +5,10 @@
  include/linux/ext3_fs_sb.h |   10 +
  5 files changed, 365 insertions(+)
 
-Index: linux-2.4.20-hp4-pnnl13/fs/ext3/super.c
+Index: linux/fs/ext3/super.c
 ===================================================================
---- linux-2.4.20-hp4-pnnl13.orig/fs/ext3/super.c       2004-01-12 19:22:32.000000000 +0300
-+++ linux-2.4.20-hp4-pnnl13/fs/ext3/super.c    2004-01-13 17:04:38.000000000 +0300
+--- linux.orig/fs/ext3/super.c Mon Feb  2 20:57:35 2004
++++ linux/fs/ext3/super.c      Mon Feb  2 20:58:05 2004
 @@ -400,6 +400,221 @@
        }
  }
@@ -298,10 +298,10 @@ Index: linux-2.4.20-hp4-pnnl13/fs/ext3/super.c
        if (sbi->s_mount_opt & EXT3_MOUNT_ABORT)
                ext3_abort(sb, __FUNCTION__, "Abort forced by user");
  
-Index: linux-2.4.20-hp4-pnnl13/fs/ext3/inode.c
+Index: linux/fs/ext3/inode.c
 ===================================================================
---- linux-2.4.20-hp4-pnnl13.orig/fs/ext3/inode.c       2004-01-12 19:22:32.000000000 +0300
-+++ linux-2.4.20-hp4-pnnl13/fs/ext3/inode.c    2004-01-13 17:01:40.000000000 +0300
+--- linux.orig/fs/ext3/inode.c Mon Feb  2 20:57:35 2004
++++ linux/fs/ext3/inode.c      Mon Feb  2 20:58:05 2004
 @@ -2500,6 +2500,118 @@
        return err;
  }
@@ -421,10 +421,10 @@ Index: linux-2.4.20-hp4-pnnl13/fs/ext3/inode.c
  /* 
   * On success, We end up with an outstanding reference count against
   * iloc->bh.  This _must_ be cleaned up later. 
-Index: linux-2.4.20-hp4-pnnl13/fs/ext3/file.c
+Index: linux/fs/ext3/file.c
 ===================================================================
---- linux-2.4.20-hp4-pnnl13.orig/fs/ext3/file.c        2004-01-12 19:22:32.000000000 +0300
-+++ linux-2.4.20-hp4-pnnl13/fs/ext3/file.c     2004-01-13 17:01:40.000000000 +0300
+--- linux.orig/fs/ext3/file.c  Mon Feb  2 20:57:34 2004
++++ linux/fs/ext3/file.c       Mon Feb  2 20:58:05 2004
 @@ -125,7 +125,11 @@
  };
  
@@ -437,23 +437,10 @@ Index: linux-2.4.20-hp4-pnnl13/fs/ext3/file.c
        setattr:        ext3_setattr,           /* BKL held */
        setxattr:       ext3_setxattr,          /* BKL held */
        getxattr:       ext3_getxattr,          /* BKL held */
-Index: linux-2.4.20-hp4-pnnl13/fs/buffer.c
+Index: linux/include/linux/ext3_fs.h
 ===================================================================
---- linux-2.4.20-hp4-pnnl13.orig/fs/buffer.c   2003-09-13 15:19:26.000000000 +0400
-+++ linux-2.4.20-hp4-pnnl13/fs/buffer.c        2004-01-13 17:01:40.000000000 +0300
-@@ -376,6 +376,8 @@
-       if (sb->s_op && sb->s_op->sync_fs)
-               sb->s_op->sync_fs(sb);
-       unlock_super(sb);
-+      if (sb->s_op && sb->s_op->sync_fs)
-+              sb->s_op->sync_fs(sb);
-       unlock_kernel();
-       return sync_buffers(dev, 1);
-Index: linux-2.4.20-hp4-pnnl13/include/linux/ext3_fs.h
-===================================================================
---- linux-2.4.20-hp4-pnnl13.orig/include/linux/ext3_fs.h       2004-01-12 19:22:32.000000000 +0300
-+++ linux-2.4.20-hp4-pnnl13/include/linux/ext3_fs.h    2004-01-13 17:01:40.000000000 +0300
+--- linux.orig/include/linux/ext3_fs.h Mon Feb  2 20:57:35 2004
++++ linux/include/linux/ext3_fs.h      Mon Feb  2 20:58:05 2004
 @@ -193,6 +193,7 @@
   */
  #define EXT3_STATE_JDATA              0x00000001 /* journaled data exists */
@@ -480,10 +467,10 @@ Index: linux-2.4.20-hp4-pnnl13/include/linux/ext3_fs.h
  
  /* ioctl.c */
  extern int ext3_ioctl (struct inode *, struct file *, unsigned int,
-Index: linux-2.4.20-hp4-pnnl13/include/linux/ext3_fs_sb.h
+Index: linux/include/linux/ext3_fs_sb.h
 ===================================================================
---- linux-2.4.20-hp4-pnnl13.orig/include/linux/ext3_fs_sb.h    2004-01-12 19:22:32.000000000 +0300
-+++ linux-2.4.20-hp4-pnnl13/include/linux/ext3_fs_sb.h 2004-01-13 17:01:40.000000000 +0300
+--- linux.orig/include/linux/ext3_fs_sb.h      Mon Feb  2 20:57:35 2004
++++ linux/include/linux/ext3_fs_sb.h   Mon Feb  2 20:58:05 2004
 @@ -29,6 +29,8 @@
  
  #define EXT3_MAX_GROUP_LOADED 8
diff --git a/lustre/kernel_patches/patches/invalidate_show-2.4.20-hp.patch b/lustre/kernel_patches/patches/invalidate_show-2.4.20-hp.patch
new file mode 100644 (file)
index 0000000..fad6233
--- /dev/null
@@ -0,0 +1,123 @@
+
+
+
+ fs/inode.c         |   21 ++++++++++++++-------
+ fs/smbfs/inode.c   |    2 +-
+ fs/super.c         |    4 ++--
+ include/linux/fs.h |    2 +-
+ 4 files changed, 18 insertions(+), 11 deletions(-)
+
+Index: linux/fs/inode.c
+===================================================================
+--- linux.orig/fs/inode.c      Mon Feb  2 21:24:21 2004
++++ linux/fs/inode.c   Mon Feb  2 21:27:53 2004
+@@ -632,7 +632,8 @@
+ /*
+  * Invalidate all inodes for a device.
+  */
+-static int invalidate_list(struct list_head *head, struct super_block * sb, struct list_head * dispose)
++static int invalidate_list(struct list_head *head, struct super_block * sb,
++                         struct list_head * dispose, int show)
+ {
+       struct list_head *next;
+       int busy = 0, count = 0;
+@@ -657,6 +658,11 @@
+                       count++;
+                       continue;
+               }
++              if (show)
++                      printk(KERN_ERR
++                             "inode busy: dev %s:%lu (%p) mode %o count %u\n",
++                             kdevname(sb->s_dev), inode->i_ino, inode,
++                             inode->i_mode, atomic_read(&inode->i_count));
+               busy = 1;
+       }
+       /* only unused inodes may be cached with i_count zero */
+@@ -675,23 +681,24 @@
+ /**
+  *    invalidate_inodes       - discard the inodes on a device
+  *    @sb: superblock
++ *    @show: whether we should display any busy inodes found
+  *
+  *    Discard all of the inodes for a given superblock. If the discard
+  *    fails because there are busy inodes then a non zero value is returned.
+  *    If the discard is successful all the inodes have been discarded.
+  */
+  
+-int invalidate_inodes(struct super_block * sb)
++int invalidate_inodes(struct super_block * sb, int show)
+ {
+       int busy;
+       LIST_HEAD(throw_away);
+       spin_lock(&inode_lock);
+-      busy = invalidate_list(&inode_in_use, sb, &throw_away);
+-      busy |= invalidate_list(&inode_unused, sb, &throw_away);
+-      busy |= invalidate_list(&inode_unused_pagecache, sb, &throw_away);
+-      busy |= invalidate_list(&sb->s_dirty, sb, &throw_away);
+-      busy |= invalidate_list(&sb->s_locked_inodes, sb, &throw_away);
++      busy = invalidate_list(&inode_in_use, sb, &throw_away, show);
++      busy |= invalidate_list(&inode_unused, sb, &throw_away, show);
++      busy |= invalidate_list(&inode_unused_pagecache, sb, &throw_away, show);
++      busy |= invalidate_list(&sb->s_dirty, sb, &throw_away, show);
++      busy |= invalidate_list(&sb->s_locked_inodes, sb, &throw_away, show);
+       spin_unlock(&inode_lock);
+       dispose_list(&throw_away);
+@@ -717,7 +724,7 @@
+                * hold).
+                */
+               shrink_dcache_sb(sb);
+-              res = invalidate_inodes(sb);
++              res = invalidate_inodes(sb, 0);
+               drop_super(sb);
+       }
+       invalidate_buffers(dev);
+Index: linux/fs/super.c
+===================================================================
+--- linux.orig/fs/super.c      Mon Feb  2 21:24:21 2004
++++ linux/fs/super.c   Mon Feb  2 21:26:08 2004
+@@ -844,7 +844,7 @@
+       lock_super(sb);
+       lock_kernel();
+       sb->s_flags &= ~MS_ACTIVE;
+-      invalidate_inodes(sb);  /* bad name - it should be evict_inodes() */
++      invalidate_inodes(sb, 0);  /* bad name - it should be evict_inodes() */
+       if (sop) {
+               if (sop->write_super && sb->s_dirt)
+                       sop->write_super(sb);
+@@ -853,7 +853,7 @@
+       }
+       /* Forget any remaining inodes */
+-      if (invalidate_inodes(sb)) {
++      if (invalidate_inodes(sb, 1)) {
+               printk(KERN_ERR "VFS: Busy inodes after unmount. "
+                       "Self-destruct in 5 seconds.  Have a nice day...\n");
+       }
+Index: linux/include/linux/fs.h
+===================================================================
+--- linux.orig/include/linux/fs.h      Mon Feb  2 21:24:23 2004
++++ linux/include/linux/fs.h   Mon Feb  2 21:26:08 2004
+@@ -1257,7 +1257,7 @@
+ extern void set_buffer_flushtime(struct buffer_head *);
+ extern void balance_dirty(void);
+ extern int check_disk_change(kdev_t);
+-extern int invalidate_inodes(struct super_block *);
++extern int invalidate_inodes(struct super_block *, int);
+ extern int invalidate_device(kdev_t, int);
+ extern void invalidate_inode_pages(struct inode *);
+ extern void invalidate_inode_pages2(struct address_space *);
+Index: linux/fs/smbfs/inode.c
+===================================================================
+--- linux.orig/fs/smbfs/inode.c        Thu Nov 28 18:53:15 2002
++++ linux/fs/smbfs/inode.c     Mon Feb  2 21:26:08 2004
+@@ -167,7 +167,7 @@
+ {
+       VERBOSE("\n");
+       shrink_dcache_sb(SB_of(server));
+-      invalidate_inodes(SB_of(server));
++      invalidate_inodes(SB_of(server), 0);
+ }
+ /*
index e3c5a62..6cfe667 100644 (file)
@@ -3,7 +3,7 @@ dev_read_only_hp_2.4.20.patch
 exports_2.4.20-rh-hp.patch
 lustre_version.patch
 vfs_intent-2.4.20-hp.patch
-invalidate_show.patch
+invalidate_show-2.4.20-hp.patch 
 export-truncate.patch
 iod-stock-24-exports_hp.patch
 ext-2.4-patch-1.patch
@@ -25,6 +25,8 @@ ext3-map_inode_page.patch
 ext3-error-export.patch
 iopen-2.4.20.patch
 tcp-zero-copy.patch
+jbd-dont-account-blocks-twice.patch
+jbd-commit-tricks.patch
 add_page_private.patch
 socket-exports-vanilla.patch
 removepage-2.4.20.patch
@@ -32,6 +34,7 @@ jbd-ctx_switch.patch
 jbd-flushtime.patch
 jbd-get_write_access.patch
 nfs_export_kernel-2.4.20-hp.patch
+ext3-raw-lookup.patch
 ext3-ea-in-inode-2.4.20.patch
 listman-2.4.20.patch
 ext3-trusted_ea-2.4.20.patch