Re: Oops with tmpfs on both 2.4.22 & 2.6.0-test11

William Lee Irwin III
2003-11-30T20:06:20Z

At some point in the past, I wrote:
>> Please post the oops (run through ksymoops as-needed).

On Sun, Nov 30, 2003 at 09:34:44AM -0800, James W McMechan wrote:
> I still think the one line test program was easier...
> I hope this helps

Could you try 2.6 with the following patch and send in the resulting
oops/BUG? Please turn on kallsyms for the run.

Thanks.

-- wli

--- fs/libfs.c.orig 2003-11-30 12:02:09.000000000 -0800
+++ fs/libfs.c 2003-11-30 12:04:36.000000000 -0800
@@ -60,6 +60,9 @@

loff_t dcache_dir_lseek(struct file *file, loff_t offset, int origin)
{
+ BUG_ON(!file);
+ BUG_ON(!file->f_dentry);
+ BUG_ON(!file->f_dentry->d_inode);
down(&file->f_dentry->d_inode->i_sem);
switch (origin) {
case 1:
@@ -83,10 +86,12 @@
while (n && p != &file->f_dentry->d_subdirs) {
struct dentry *next;
next = list_entry(p, struct dentry, d_child);
+ BUG_ON(!next);
if (!d_unhashed(next) && next->d_inode)
n--;
p = p->next;
}
+ BUG_ON(!cursor);
list_del(&cursor->d_child);
list_add_tail(&cursor->d_child, p);
spin_unlock(&dcache_lock);