generic_commit_write() does not flush dirty buffers in pre-8

From: Jeff V. Merkey (jmerkey@timpanogas.com)
Date: Mon May 15 2000 - 12:22:40 EST


while executing the attached code fragment for the page cache interface
in 2.3.99-pre8, generic_commit_write() fails to flush the buffer heads
at page->buffer out to disk, resulting in file system corruption.

File System is registered with the 2.4 VFS as:

struct super_operations nwfs_sops =
{
    read_inode: nwfs_read_inode, // read inode
    write_inode: nwfs_write_inode, // write inode
    put_inode: nwfs_put_inode, // put inode
    delete_inode: nwfs_delete_inode, // delete inode
    put_super: nwfs_put_super, // put superblock
    statfs: nwfs_statfs, // stat filesystem
    remount_fs: nwfs_remount, // remount filesystem
};

DECLARE_FSTYPE(nwfs_fs_type, "nwfs", nwfs_read_super, 0);

The file mmap.c is attached for review.

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 : Mon May 15 2000 - 21:00:26 EST