---- 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 @@
}
+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);
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)
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
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);
}
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.
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);
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++;
* 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;
+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;
}
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);
/* 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 <asm/atomic.h>
#include <linux/mount.h>
+#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;
/*
* 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 */
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 *);
};
/* 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 */
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
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...
*/
+ 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)) {
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);
+{
+ int error = 0;
+ if (path_init(path, flags, nd))
-+ error = path_walk(path, nd);
++ error = path_walk_it(path, nd, it);
+ return error;
+}
+
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 <asm/uaccess.h>
/*
* 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 <asm/uaccess.h>
+
++
++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);
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.
*/
#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;
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);
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