Date: Thu, 24 May 2001 00:22:27 -0700 (PDT) From: Matt Dillon <dillon@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/lib/libc/sys fcntl.2 open.2 src/sys/kern vfs_bio.c vfs_cluster.c vfs_vnops.c src/sys/sys buf.h fcntl.h file.h vnode.h src/sys/vm vm_page.c vm_page.h src/sys/ufs/ufs ufs_readwrite.c Message-ID: <200105240722.f4O7MRI32369@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
dillon 2001/05/24 00:22:27 PDT
Modified files:
lib/libc/sys fcntl.2 open.2
sys/kern vfs_bio.c vfs_cluster.c vfs_vnops.c
sys/sys buf.h fcntl.h file.h vnode.h
sys/vm vm_page.c vm_page.h
sys/ufs/ufs ufs_readwrite.c
Log:
This patch implements O_DIRECT about 80% of the way. It takes a patchset
Tor created a while ago, removes the raw I/O piece (that has cache coherency
problems), and adds a buffer cache / VM freeing piece.
Essentially this patch causes O_DIRECT I/O to not be left in the cache, but
does not prevent it from going through the cache, hence the 80%. For
the last 20% we need a method by which the I/O can be issued directly to
buffer supplied by the user process and bypass the buffer cache entirely,
but still maintain cache coherency.
I also have the code working under -stable but the changes made to sys/file.h
may not be MFCable, so an MFC is not on the table yet.
Submitted by: tegge, dillon
Revision Changes Path
1.22 +6 -1 src/lib/libc/sys/fcntl.2
1.15 +8 -1 src/lib/libc/sys/open.2
1.282 +8 -3 src/sys/kern/vfs_bio.c
1.110 +10 -1 src/sys/kern/vfs_cluster.c
1.117 +5 -1 src/sys/kern/vfs_vnops.c
1.118 +8 -4 src/sys/sys/buf.h
1.11 +6 -3 src/sys/sys/fcntl.h
1.29 +3 -2 src/sys/sys/file.h
1.152 +2 -1 src/sys/sys/vnode.h
1.164 +24 -1 src/sys/vm/vm_page.c
1.86 +2 -1 src/sys/vm/vm_page.h
1.80 +30 -8 src/sys/ufs/ufs/ufs_readwrite.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200105240722.f4O7MRI32369>
