Addressing Large
Sequential Read Performance
In Linux's Ext2 Filesystem
Kevin
O'Connor and Greg Tracy
koconnor@cs.wisc.edu,
gtracy@cs.wisc.edu
University of Wisconsin, Madison
1210 Dayton Street
Madison, WI 53706
Benchmarking Tools:
Kernel Modifications We
Made to Support madvise():
-
include/asm/unistd.h - Assigns index into syscall table for madvise
-
include/asm/mman.h - Defines madvise behaviors (MADV_SEQUENTIAL, etc)
-
arch/i386/kernel/entry.S - Adds madvise to system call table
-
arch/i386/kernel/sys_i386.c - Adds entry point for madvise, error checks params
-
mm/mmap.c - Adds the meat of madvise functionality
|
Kernel Modifcations We
Made to Support Improved Read Ahead:
-
mm/filemap.c - Changes made to filemap_nopage() and try_to_read_ahead()
-
fs/buffer.c - Changes made to generic_readpage()
-
driver/block/ll_rw_blk/ll_rw_blk.c - Request waiting occurs in make_request()
|
All-In-One gzipped tarball:
Return to Main Page
|