xfs
[Top] [All Lists]

TAKE - Add delay alloc and more locking and some bug fixes.

To: linux-xfs@xxxxxxxxxxx
Subject: TAKE - Add delay alloc and more locking and some bug fixes.
From: Jim Mostek <mostek@xxxxxxx>
Date: Fri, 7 Apr 2000 16:13:40 -0500 (CDT)
Sender: owner-linux-xfs@xxxxxxxxxxx
This take adds delay alloc/convert into xfs, but not fully yet into
page_buf.

Also, locking is added for page fault code so that page_faults
don't corrupt read/writes. This helps with doio, but there is still
more corruption when competing threads on the same file hit
NEW allocations that cover some exiting allocations (that cover both
holes and existing allocations). Will try to tackle this next week.

Reads now work faster than before, but I suspect some operations have
slowed down. Performance work to come later after we get rid of
corruption.

Modid:  2.3.99pre2-xfs:slinx:57237a
Date:  Fri Apr  7 14:10:54 PDT 2000
Workarea:  fsgi344:/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/page_buf.c - 1.78
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/page_buf.c.diff?r1=text&tr1=1.78&r2=text&tr2=1.77&f=h
        - Remove the flag arg from _pagebuf_set_blocks_mp (not used).
          Correctly determine the end of mapping/io before zero'ing extra
          disk space. This is still not done.
          Add the start of the delay alloc work by always asking for
          PBF_DIRECT (which is what is running today). To get delay_alloc
          extents back, set delay_alloc.
          A Steve Lord bug fix. start at block 0 in prepare write not
          block = page->index << (PAGE_CACHE_SHIFT - bbits);

linux/fs/xfs/linux/xfs_iops.c - 1.45
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/xfs/linux/xfs_iops.c.diff?r1=text&tr1=1.45&r2=text&tr2=1.44&f=h
        - Remove linvfs_get_block(), not used.
          Have linvfs_pb_bmap just pass through flags.
          Get I/O lock in read/write full page and linvfs_file_read.
          This is done by having new routines in linvfs call pagebuf.
          The xfs_read lock is removed in xfs_read and now obtained
          in the linvfs layer routines at a lower level.
          Add delay alloc iomap routine and convert routine. These are not
          used, yet, but will be turned on soon when pagebuf is ready.

linux/fs/xfs/linux/xfs_lrw.c - 1.33
http://oss.sgi.com/cgi-bin/cvsweb.cgi/linux-2.4-xfs/linux/fs/xfs/linux/xfs_lrw.c.diff?r1=text&tr1=1.33&r2=text&tr2=1.32&f=h
        - Add delay alloc iomap routine and convert routine. These are not
          used, yet, but will be turned on soon when pagebuf is ready.


<Prev in Thread] Current Thread [Next in Thread>
  • TAKE - Add delay alloc and more locking and some bug fixes., Jim Mostek <=