From: braam Date: Wed, 17 Jul 2002 02:07:21 +0000 (+0000) Subject: - move LLNL kernel patch forward to chaos9 X-Git-Tag: 0.4.5~13 X-Git-Url: https://git.whamcloud.com/gitweb?a=commitdiff_plain;h=9c8c80b8e0b887fc4116b1697105b62e708ef2fd;p=fs%2Flustre-release.git - move LLNL kernel patch forward to chaos9 --- diff --git a/lustre/patches/patch-2.4.18-chaos4 b/lustre/patches/patch-2.4.18-chaos9 similarity index 90% rename from lustre/patches/patch-2.4.18-chaos4 rename to lustre/patches/patch-2.4.18-chaos9 index bdfebc5..c906780 100644 --- a/lustre/patches/patch-2.4.18-chaos4 +++ b/lustre/patches/patch-2.4.18-chaos9 @@ -1,25 +1,5 @@ ---- linux-2.4.18-chaos4-pristine/drivers/quadrics/elan3comms/epcomms.c Thu Jun 27 21:52:20 2002 -+++ linux-2.4.18-chaos4/drivers/quadrics/elan3comms/epcomms.c Thu Jun 27 21:52:57 2002 -@@ -2249,7 +2249,7 @@ - if (EP_EVENT_FIRING (edev, txdElan + offsetof (EP_TXD_ELAN, DataEvent), txd->DataCookie, txdMain->DataEvent) && /* PCI read */ - EP_EVENT_FIRING (edev, txdElan + offsetof (EP_TXD_ELAN, EnveEvent), txd->EnveCookie, txdMain->EnveEvent)) /* PCI read */ - { -- if (delay == 1) -+ if (0 /* delay == 1 */) - printf ("LargeTxDataEvent: events set but block copy not completed\n"); - if (delay > EP_EVENT_FIRING_TLIMIT) - panic ("LargeTxDataEvent: events set but block copy not completed\n"); -@@ -2438,7 +2438,7 @@ - - if (EP_EVENT_FIRING (edev, rxdElan + offsetof (EP_RXD_ELAN, DataEvent), rxd->DataCookie, rxdMain->DataEvent)) /* PCI read */ - { -- if (delay == 1) -+ if (0 /* delay == 1 */) - printf ("LargeRxDataEvent: events set but block copy not completed\n"); - if (delay > EP_EVENT_FIRING_TLIMIT) - panic ("LargeRxDataEvent: events set but block copy not completed\n"); ---- linux-2.4.18-chaos4-pristine/drivers/block/blkpg.c Thu Jun 27 21:52:17 2002 -+++ linux-2.4.18-chaos4/drivers/block/blkpg.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/drivers/block/blkpg.c Sat Jun 29 23:07:36 2002 ++++ linux-2.4.18-chaos5/drivers/block/blkpg.c Sat Jun 29 23:09:04 2002 @@ -295,3 +295,38 @@ } @@ -59,8 +39,8 @@ +EXPORT_SYMBOL(dev_set_rdonly); +EXPORT_SYMBOL(dev_check_rdonly); +EXPORT_SYMBOL(dev_clear_rdonly); ---- linux-2.4.18-chaos4-pristine/drivers/block/loop.c Thu Jun 27 21:52:17 2002 -+++ linux-2.4.18-chaos4/drivers/block/loop.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/drivers/block/loop.c Sat Jun 29 23:07:36 2002 ++++ linux-2.4.18-chaos5/drivers/block/loop.c Sat Jun 29 23:09:04 2002 @@ -503,6 +503,11 @@ spin_unlock_irq(&lo->lo_lock); @@ -73,8 +53,8 @@ if (lo->lo_flags & LO_FLAGS_READ_ONLY) goto err; } else if (rw == READA) { ---- linux-2.4.18-chaos4-pristine/drivers/ide/ide-disk.c Thu Jun 27 21:52:18 2002 -+++ linux-2.4.18-chaos4/drivers/ide/ide-disk.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/drivers/ide/ide-disk.c Sat Jun 29 23:07:36 2002 ++++ linux-2.4.18-chaos5/drivers/ide/ide-disk.c Sat Jun 29 23:09:04 2002 @@ -557,6 +557,12 @@ */ static ide_startstop_t do_rw_disk (ide_drive_t *drive, struct request *rq, unsigned long block) @@ -88,8 +68,8 @@ if (IDE_CONTROL_REG) OUT_BYTE(drive->ctl,IDE_CONTROL_REG); ---- linux-2.4.18-chaos4-pristine/fs/ext3/Makefile Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/ext3/Makefile Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/fs/ext3/Makefile Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/ext3/Makefile Sat Jun 29 23:09:04 2002 @@ -9,6 +9,8 @@ O_TARGET := ext3.o @@ -99,8 +79,8 @@ obj-y := balloc.o bitmap.o dir.o file.o fsync.o ialloc.o inode.o \ ioctl.o namei.o super.o symlink.o obj-m := $(O_TARGET) ---- linux-2.4.18-chaos4-pristine/fs/ext3/super.c Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/ext3/super.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/fs/ext3/super.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/ext3/super.c Sat Jun 29 23:09:04 2002 @@ -1746,7 +1746,7 @@ unregister_filesystem(&ext3_fs_type); } @@ -110,8 +90,8 @@ MODULE_AUTHOR("Remy Card, Stephen Tweedie, Andrew Morton, Andreas Dilger, Theodore Ts'o and others"); MODULE_DESCRIPTION("Second Extended Filesystem with journaling extensions"); ---- linux-2.4.18-chaos4-pristine/fs/jbd/commit.c Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/jbd/commit.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/fs/jbd/commit.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/jbd/commit.c Sat Jun 29 23:09:04 2002 @@ -482,7 +482,7 @@ transaction's t_log_list queue, and metadata buffers are on the t_iobuf_list queue. @@ -179,8 +159,8 @@ jbd_debug(3, "JBD: commit phase 7\n"); J_ASSERT(commit_transaction->t_sync_datalist == NULL); ---- linux-2.4.18-chaos4-pristine/fs/jbd/journal.c Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/jbd/journal.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/fs/jbd/journal.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/jbd/journal.c Sat Jun 29 23:09:04 2002 @@ -58,6 +58,7 @@ #endif EXPORT_SYMBOL(journal_flush); @@ -189,8 +169,8 @@ EXPORT_SYMBOL(journal_init_dev); EXPORT_SYMBOL(journal_init_inode); ---- linux-2.4.18-chaos4-pristine/fs/jbd/transaction.c Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/jbd/transaction.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/fs/jbd/transaction.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/jbd/transaction.c Sat Jun 29 23:09:04 2002 @@ -57,6 +57,7 @@ transaction->t_state = T_RUNNING; transaction->t_tid = journal->j_transaction_sequence++; @@ -296,8 +276,8 @@ * If the handle is marked SYNC, we need to set another commit * going! We also want to force a commit if the current * transaction is occupying too much of the log, or if the ---- linux-2.4.18-chaos4-pristine/include/linux/blkdev.h Thu Jun 27 21:52:26 2002 -+++ linux-2.4.18-chaos4/include/linux/blkdev.h Thu Jun 27 22:35:02 2002 +--- linux-2.4.18-chaos5-pristine/include/linux/blkdev.h Sat Jun 29 23:07:57 2002 ++++ linux-2.4.18-chaos5/include/linux/blkdev.h Mon Jul 1 08:51:17 2002 @@ -276,4 +276,9 @@ } return retval; @@ -308,8 +288,8 @@ +int dev_check_rdonly(kdev_t); +void dev_clear_rdonly(int); #endif ---- linux-2.4.18-chaos4-pristine/include/linux/jbd.h Thu Jun 27 21:52:26 2002 -+++ linux-2.4.18-chaos4/include/linux/jbd.h Thu Jun 27 22:35:04 2002 +--- linux-2.4.18-chaos5-pristine/include/linux/jbd.h Sat Jun 29 23:07:57 2002 ++++ linux-2.4.18-chaos5/include/linux/jbd.h Mon Jul 1 08:51:19 2002 @@ -257,6 +257,13 @@ return bh->b_private; } @@ -357,8 +337,8 @@ extern void journal_lock_updates (journal_t *); extern void journal_unlock_updates (journal_t *); ---- linux-2.4.18-chaos4-pristine/kernel/ksyms.c Thu Jun 27 21:52:27 2002 -+++ linux-2.4.18-chaos4/kernel/ksyms.c Thu Jun 27 22:43:39 2002 +--- linux-2.4.18-chaos5-pristine/kernel/ksyms.c Sat Jun 29 23:07:57 2002 ++++ linux-2.4.18-chaos5/kernel/ksyms.c Sat Jun 29 23:09:04 2002 @@ -306,6 +306,13 @@ EXPORT_SYMBOL(lock_may_write); EXPORT_SYMBOL(dcache_readdir); @@ -373,9 +353,9 @@ /* for stackable file systems (lofs, wrapfs, cryptfs, etc.) */ EXPORT_SYMBOL(default_llseek); EXPORT_SYMBOL(dentry_open); ---- linux-2.4.18-chaos4-pristine/include/linux/dcache.h Thu Jun 27 21:52:26 2002 -+++ linux-2.4.18-chaos4/include/linux/dcache.h Thu Jun 27 22:34:38 2002 -@@ -6,6 +6,33 @@ +--- linux-2.4.18-chaos5-pristine/include/linux/dcache.h Sat Jun 29 23:07:57 2002 ++++ linux-2.4.18-chaos5/include/linux/dcache.h Mon Jul 1 08:51:12 2002 +@@ -6,6 +6,32 @@ #include #include @@ -393,7 +373,6 @@ +#define IT_SETATTR (1<<11) +#define IT_READLINK (1<<12) +#define IT_MKNOD (1<<13) -+#define IT_LOOKUP (1<<14) + +struct lookup_intent { + int it_op; @@ -409,7 +388,7 @@ /* * linux/include/linux/dcache.h * -@@ -78,6 +105,7 @@ +@@ -78,6 +104,7 @@ unsigned long d_time; /* used by d_revalidate */ struct dentry_operations *d_op; struct super_block * d_sb; /* The root of the dentry tree */ @@ -417,7 +396,7 @@ unsigned long d_vfs_flags; void * d_fsdata; /* fs-specific data */ void * d_extra_attributes; /* TUX-specific data */ -@@ -91,6 +119,8 @@ +@@ -91,6 +118,8 @@ int (*d_delete)(struct dentry *); void (*d_release)(struct dentry *); void (*d_iput)(struct dentry *, struct inode *); @@ -426,8 +405,8 @@ }; /* the dentry parameter passed to d_hash and d_compare is the parent ---- linux-2.4.18-chaos4-pristine/include/linux/fs.h Thu Jun 27 21:52:26 2002 -+++ linux-2.4.18-chaos4/include/linux/fs.h Thu Jun 27 22:34:40 2002 +--- linux-2.4.18-chaos5-pristine/include/linux/fs.h Sat Jun 29 23:07:57 2002 ++++ linux-2.4.18-chaos5/include/linux/fs.h Mon Jul 1 08:51:12 2002 @@ -572,6 +572,7 @@ /* needed for tty driver, and maybe others */ @@ -480,8 +459,8 @@ extern void iput(struct inode *); extern void force_delete(struct inode *); ---- linux-2.4.18-chaos4-pristine/fs/nfsd/vfs.c Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/nfsd/vfs.c Thu Jun 27 21:54:45 2002 +--- linux-2.4.18-chaos5-pristine/fs/nfsd/vfs.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/nfsd/vfs.c Sat Jun 29 23:09:04 2002 @@ -1298,7 +1298,7 @@ err = nfserr_perm; } else @@ -491,8 +470,8 @@ unlock_kernel(); if (!err && EX_ISSYNC(tfhp->fh_export)) { nfsd_sync_dir(tdentry); ---- linux-2.4.18-chaos4-pristine/fs/namei.c Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/namei.c Thu Jun 27 22:38:03 2002 +--- linux-2.4.18-chaos5-pristine/fs/namei.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/namei.c Tue Jul 2 16:06:05 2002 @@ -94,6 +94,14 @@ * XEmacs seems to be relying on it... */ @@ -523,7 +502,7 @@ + dentry = NULL; + } + return dentry; -+ } ++ } else + if (dentry && dentry->d_op && dentry->d_op->d_revalidate) { if (!dentry->d_op->d_revalidate(dentry, flags) && !d_invalidate(dentry)) { @@ -551,7 +530,7 @@ result = ERR_PTR(-ENOENT); } } -+ if (result->d_op && result->d_op->d_revalidate2) { ++ else if (result->d_op && result->d_op->d_revalidate2) { + if (!result->d_op->d_revalidate2(result, flags, it) && !d_invalidate(result)) { + dput(result); + result = ERR_PTR(-ENOENT); @@ -666,7 +645,7 @@ +{ + int error = 0; + if (path_init(path, flags, nd)) -+ error = path_walk(path, nd); ++ error = path_walk_it(path, nd, it); + return error; +} + @@ -1096,8 +1075,8 @@ from = getname(oldname); if(IS_ERR(from)) ---- linux-2.4.18-chaos4-pristine/fs/open.c Thu Jun 27 21:52:23 2002 -+++ linux-2.4.18-chaos4/fs/open.c Thu Jun 27 22:32:39 2002 +--- linux-2.4.18-chaos5-pristine/fs/open.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/open.c Sat Jun 29 23:09:04 2002 @@ -19,6 +19,8 @@ #include @@ -1373,17 +1352,39 @@ /* * Find an empty file descriptor entry, and mark it busy. */ ---- linux-2.4.18-chaos4-pristine/fs/stat.c Thu Jun 27 21:52:24 2002 -+++ linux-2.4.18-chaos4/fs/stat.c Thu Jun 27 21:52:58 2002 -@@ -117,10 +117,14 @@ +--- linux-2.4.18-chaos5-pristine/fs/stat.c Sat Jun 29 23:07:56 2002 ++++ linux-2.4.18-chaos5/fs/stat.c Mon Jul 1 08:54:45 2002 +@@ -13,6 +13,8 @@ + + #include + ++ ++extern void intent_release(struct dentry *de); + /* + * Revalidate the inode. This is required for proper NFS attribute caching. + */ +@@ -104,10 +106,12 @@ { struct nameidata nd; int error; -+ struct lookup_intent it; -+ it.it_op = IT_GETATTR; ++ struct lookup_intent it = { IT_GETATTR}; -- error = user_path_walk_link(name, &nd); +- error = user_path_walk(name, &nd); ++ error = user_path_walk_it(name, &nd, &it); + if (!error) { + error = do_getattr(nd.mnt, nd.dentry, stat); ++ intent_release(nd.dentry); + path_release(&nd); + } + return error; +@@ -117,10 +121,13 @@ + { + struct nameidata nd; + int error; ++ struct lookup_intent it = { IT_GETATTR}; + + +- error = user_path_walk_link(name, &nd); + error = user_path_walk_link_it(name, &nd, &it); if (!error) { error = do_getattr(nd.mnt, nd.dentry, stat); @@ -1391,8 +1392,8 @@ path_release(&nd); } return error; ---- linux-2.4.18-chaos4-pristine/mm/slab.c Thu Jun 27 21:52:27 2002 -+++ linux-2.4.18-chaos4/mm/slab.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/mm/slab.c Sat Jun 29 23:07:57 2002 ++++ linux-2.4.18-chaos5/mm/slab.c Sat Jun 29 23:09:04 2002 @@ -1207,6 +1207,60 @@ * Called with the cache-lock held. */ @@ -1454,8 +1455,8 @@ #if DEBUG static int kmem_extra_free_checks (kmem_cache_t * cachep, slab_t *slabp, void * objp) ---- linux-2.4.18-chaos4-pristine/arch/i386/mm/init.c Thu Jun 27 21:52:15 2002 -+++ linux-2.4.18-chaos4/arch/i386/mm/init.c Thu Jun 27 21:52:58 2002 +--- linux-2.4.18-chaos5-pristine/arch/i386/mm/init.c Sat Jun 29 23:07:34 2002 ++++ linux-2.4.18-chaos5/arch/i386/mm/init.c Sat Jun 29 23:09:04 2002 @@ -43,6 +43,14 @@ static unsigned long totalram_pages; static unsigned long totalhigh_pages; @@ -1471,8 +1472,8 @@ int do_check_pgt_cache(int low, int high) { int freed = 0; ---- linux-2.4.18-chaos4-pristine/include/linux/slab.h Thu Jun 27 21:52:27 2002 -+++ linux-2.4.18-chaos4/include/linux/slab.h Thu Jun 27 22:34:41 2002 +--- linux-2.4.18-chaos5-pristine/include/linux/slab.h Sat Jun 29 23:07:57 2002 ++++ linux-2.4.18-chaos5/include/linux/slab.h Mon Jul 1 08:51:12 2002 @@ -57,6 +57,7 @@ extern int kmem_cache_shrink(kmem_cache_t *); extern void *kmem_cache_alloc(kmem_cache_t *, int); @@ -1481,8 +1482,8 @@ extern void *kmalloc(size_t, int); extern void kfree(const void *); ---- linux-2.4.18-chaos4-pristine/scripts/mkspec Thu Jun 27 21:52:28 2002 -+++ linux-2.4.18-chaos4/scripts/mkspec Thu Jun 27 21:57:33 2002 +--- linux-2.4.18-chaos5-pristine/scripts/mkspec Sat Jun 29 23:07:58 2002 ++++ linux-2.4.18-chaos5/scripts/mkspec Sat Jun 29 23:09:04 2002 @@ -64,6 +64,7 @@ fi # Back on track, again