Matthew Dillon
ac8f990bde
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
2001-05-24 07:22:27 +00:00
..
2001-04-10 04:11:50 +00:00
2000-04-21 09:42:15 +00:00
2001-02-25 23:56:41 +00:00
2000-04-21 09:42:15 +00:00
2000-04-21 09:42:15 +00:00
2000-04-21 09:42:15 +00:00
2000-11-24 10:48:02 +00:00
2000-11-22 16:02:00 +00:00
2000-11-10 20:57:05 +00:00
2000-11-22 16:02:00 +00:00
2000-11-15 14:40:14 +00:00
2001-02-01 16:38:02 +00:00
2000-11-10 20:57:05 +00:00
2001-04-18 15:54:10 +00:00
2001-02-01 16:38:02 +00:00
2000-04-21 09:42:15 +00:00
2001-05-23 14:58:19 +00:00
2000-12-29 14:08:20 +00:00
2000-12-29 14:08:20 +00:00
2000-11-22 16:02:00 +00:00
2001-01-16 09:08:22 +00:00
2000-06-23 05:05:44 +00:00
2000-11-22 16:02:00 +00:00
2000-06-23 05:05:44 +00:00
2001-02-07 13:45:30 +00:00
2001-04-05 01:24:05 +00:00
2001-05-24 07:22:27 +00:00
2001-02-01 16:38:02 +00:00
2000-12-29 14:08:20 +00:00
2000-05-04 13:09:25 +00:00
2000-12-29 14:08:20 +00:00
2001-01-24 13:01:12 +00:00
2001-02-01 16:38:02 +00:00
2000-04-21 09:42:15 +00:00
2000-11-22 16:02:00 +00:00
2000-11-22 16:02:00 +00:00
2000-04-21 09:42:15 +00:00
2000-04-21 09:42:15 +00:00
2000-12-29 14:08:20 +00:00
2001-02-26 14:48:38 +00:00
2000-06-23 05:05:44 +00:00
2001-04-16 15:06:57 +00:00
2000-11-19 10:30:42 +00:00
2000-04-21 09:42:15 +00:00
2000-04-21 09:42:15 +00:00
2000-12-29 14:08:20 +00:00
2001-04-15 19:53:47 +00:00
2000-06-23 05:05:44 +00:00
2001-02-01 16:38:02 +00:00
2001-01-16 09:08:22 +00:00
2000-04-21 09:42:15 +00:00
2000-12-29 14:08:20 +00:00
2000-05-04 13:09:25 +00:00
2001-04-15 19:53:47 +00:00
2001-04-18 15:54:10 +00:00
2001-02-01 16:38:02 +00:00
2000-12-29 14:08:20 +00:00
2000-12-29 14:08:20 +00:00
2000-12-29 14:08:20 +00:00
2000-11-22 16:02:00 +00:00
2000-12-29 14:08:20 +00:00
2000-12-29 14:08:20 +00:00
2001-02-26 04:16:19 +00:00
2000-12-29 14:08:20 +00:00
2000-12-11 15:15:20 +00:00
2001-02-01 16:38:02 +00:00
2001-02-01 16:38:02 +00:00
2001-01-24 13:01:12 +00:00
2000-12-11 15:15:20 +00:00
2001-04-15 19:41:44 +00:00
2000-06-23 04:25:10 +00:00
2000-12-11 15:15:20 +00:00
2000-05-04 13:09:25 +00:00
2000-11-22 16:02:00 +00:00
2000-04-21 09:42:15 +00:00
2000-06-23 20:35:45 +00:00
2001-02-12 10:14:15 +00:00
1998-03-09 07:27:58 +00:00
2000-12-29 14:08:20 +00:00
2000-11-22 16:02:00 +00:00
2000-12-29 14:08:20 +00:00
2000-11-22 16:02:00 +00:00
2000-04-21 09:42:15 +00:00
2000-12-29 14:08:20 +00:00
2000-12-29 14:08:20 +00:00
2000-04-21 09:42:15 +00:00
2000-11-22 16:02:00 +00:00
2001-05-24 07:22:27 +00:00
2000-12-29 14:08:20 +00:00
2000-05-04 13:09:25 +00:00
2001-01-16 09:08:22 +00:00
1999-04-04 21:46:24 +00:00
2000-04-21 09:42:15 +00:00
2001-02-01 16:38:02 +00:00
1999-04-04 21:46:24 +00:00
2000-05-04 13:09:25 +00:00
2000-06-23 05:05:44 +00:00
2000-05-04 13:09:25 +00:00
2000-06-13 12:50:47 +00:00
2001-02-01 16:38:02 +00:00
2000-12-29 14:08:20 +00:00
2000-04-21 09:42:15 +00:00
2001-03-16 22:18:26 +00:00
2000-12-29 14:08:20 +00:00
2000-12-29 14:08:20 +00:00
2001-04-18 15:54:10 +00:00
2000-12-11 15:15:20 +00:00
2000-12-11 15:15:20 +00:00
2000-12-29 14:08:20 +00:00
2000-09-04 15:38:58 +00:00
2000-12-29 14:08:20 +00:00
2001-02-01 16:38:02 +00:00
2000-12-29 14:08:20 +00:00
2001-05-20 00:12:06 +00:00
2001-02-04 02:05:16 +00:00
2000-04-21 09:42:15 +00:00
2000-06-23 05:05:44 +00:00
2000-05-04 13:09:25 +00:00
2001-04-15 19:40:22 +00:00
2001-02-09 12:47:23 +00:00
2000-04-21 09:42:15 +00:00
2000-04-21 09:42:15 +00:00
2001-02-26 14:33:54 +00:00
2000-12-29 14:08:20 +00:00
2000-12-29 14:08:20 +00:00
2001-02-01 16:38:02 +00:00
2001-03-12 17:28:01 +00:00
2001-02-14 21:46:07 +00:00
2000-11-22 16:02:00 +00:00
2001-01-16 21:57:42 +00:00
2000-12-29 14:08:20 +00:00
2000-05-04 13:09:25 +00:00
2000-04-21 09:42:15 +00:00
2000-11-22 16:02:00 +00:00
2001-02-26 14:48:38 +00:00
2001-03-16 01:18:03 +00:00
2000-12-29 14:08:20 +00:00
2000-11-22 16:02:00 +00:00
2001-03-29 00:29:00 +00:00
2000-12-29 14:08:20 +00:00
2000-05-04 13:09:25 +00:00
2000-07-19 07:39:08 +00:00
2000-04-21 09:42:15 +00:00
2000-04-21 09:42:15 +00:00
2000-11-22 16:02:00 +00:00
1997-04-14 15:14:58 +00:00
2000-04-21 09:42:15 +00:00
2001-05-23 14:58:19 +00:00
2000-05-04 13:09:25 +00:00
2000-04-21 09:42:15 +00:00
2000-07-08 18:17:12 +00:00
2000-11-22 16:02:00 +00:00
2001-02-26 09:38:01 +00:00