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.
|