write_inode() before read_inode()

From: Jeff V. Merkey (jmerkey@timpanogas.com)
Date: Tue Apr 18 2000 - 18:04:59 EST


Under extremely heavy load, I am seeing write_inode() being called
before a read_inode() on 2.3.99-Pre5 during recursive copying to an NWFS
file system. I am running about 40 processes all performing copy
operations when it occurs. I know it's happening because I fill out the
inode->u.generic_ip pointer to a HASH * structure, and the VFS is
calling me with a NULL pointer (but the file exists and was previously
created). It's almost as though create() is getting called, then
write_inode() before a read_inode() call.

This is different from 2.2.15 VFS and I think this may break some
stuff. It may be related to the increased locking caused by the test.
I can simply look up the inode number in the dir hash, and when I do, I
find the entry (which means it got previously created before
write_inode( was called, but read_inode() never got called). Isn't it
illegal to call write_inode() before a read_inode() call to populate the
inode structure?

Jeff

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Apr 23 2000 - 21:00:14 EST