xfs
[Top] [All Lists]

TAKE 787178 - fix time updates, eliminate lots of corruptions.

To: linux-xfs@xxxxxxxxxxx
Subject: TAKE 787178 - fix time updates, eliminate lots of corruptions.
From: Jim Mostek <mostek@xxxxxxx>
Date: Tue, 11 Apr 2000 15:02:38 -0500 (CDT)
Sender: owner-linux-xfs@xxxxxxxxxxx
doio now runs on a fairly empty file system even up to 5 threads.
There are still problems here, but this take fixes several.

Time updates now appear correctly. There is a problem because
xfs "revalidates" by overwriting the Linux inode times with the
XFS inode times. But, the I/O path doesn't update the XFS inode
times. This take adds the setting of the XFS inode times in read/write
and mmap.

Modid:  2.3.99pre2-xfs:slinx:57499a
Date:  Tue Apr 11 13:00:14 PDT 2000
Workarea:  clink.americas.sgi.com:/data/clink/io/mostek/slinx-xfs

The following file(s) were checked into:
  bonnie.engr.sgi.com:/isms/slinx/2.3.99pre2-xfs

linux/fs/xfs/linux/xfs_file.c - 1.25
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/xfs/linux/xfs_file.c.diff?r1=text&tr1=1.25&r2=text&tr2=1.24&f=h
        - Add a new wrapper and update the atime when mmap'ing a file.
          This should be removed if we ever stop using the xfs times
          in revalidate.

linux/fs/xfs/linux/xfs_iops.c - 1.46
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/xfs/linux/xfs_iops.c.diff?r1=text&tr1=1.46&r2=text&tr2=1.45&f=h
        - Use lock_page instead of LockPage. UnlockPage does a wakeup
          but LockPage doesn't check to see if set.

linux/fs/xfs/linux/xfs_lrw.c - 1.34
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/xfs/linux/xfs_lrw.c.diff?r1=text&tr1=1.34&r2=text&tr2=1.33&f=h
        - Update times at the start of write and at the end of read
          since we overwrite the linux inode times in revalidate. If
          we ever stop this, these calls to xfs_ichgtime should be deleted.
          In the convert path, drop the lock unless we get into 
xfs_iomap_convert().
          In the direct case, shring the allocation request to the size of a 
hole
          if we find a hole. This eliminates the case where we incorrectly
          mark PBMF_NEW when we convert a hole + allocated space into a larger
          allocated space.

linux/kernel/ksyms.c - 1.38
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/kernel/ksyms.c.diff?r1=text&tr1=1.38&r2=text&tr2=1.37&f=h
        - export lock_page for XFS so it can find it as a module.


<Prev in Thread] Current Thread [Next in Thread>
  • TAKE 787178 - fix time updates, eliminate lots of corruptions., Jim Mostek <=