Chen, Kenneth W
cda9205da2
[PATCH] fix blk_direct_IO bio preparation
...
For large size DIO that needs multiple bio, one full page worth of data was
lost at the boundary of bio's maximum sector or segment limits. After a
bio is full and got submitted. The outer while (nbytes) { ... } loop will
allocate a new bio and just march on to index into next page. It just
forgets about the page that bio_add_page() rejected when previous bio is
full. Fix it by put the rejected page back to pvec so we pick it up again
for the next bio.
Signed-off-by: Ken Chen <kenneth.w.chen@intel.com >
Signed-off-by: Andrew Morton <akpm@osdl.org >
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org >
2007-01-23 07:52:06 -08:00
..
2006-12-08 08:28:43 -08:00
2007-01-05 23:55:22 -08:00
2006-12-08 08:28:43 -08:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:43 -08:00
2006-12-13 09:05:58 -08:00
2006-12-13 09:05:58 -08:00
2006-12-13 09:05:53 -08:00
2006-12-23 16:19:07 -08:00
2006-12-08 08:28:44 -08:00
2006-12-08 08:28:43 -08:00
2006-12-08 08:28:44 -08:00
2006-12-13 15:38:45 -08:00
2006-12-15 12:51:22 -05:00
2006-12-08 08:28:43 -08:00
2006-12-08 08:28:45 -08:00
2006-10-03 08:03:40 -07:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:45 -08:00
2006-12-21 09:25:08 -08:00
2007-01-11 18:18:21 -08:00
2006-12-08 08:28:45 -08:00
2006-12-08 08:28:45 -08:00
2006-12-08 08:28:45 -08:00
2006-12-08 08:28:45 -08:00
2006-12-08 08:28:45 -08:00
2006-12-21 09:19:57 -08:00
2006-12-08 08:28:41 -08:00
2006-12-22 08:55:51 -08:00
2006-12-07 08:39:42 -08:00
2007-01-18 10:34:51 +11:00
2007-01-18 10:34:51 +11:00
2006-12-21 09:24:03 -08:00
2006-12-13 09:05:58 -08:00
2006-12-08 08:28:47 -08:00
2006-11-16 11:43:38 -08:00
2006-12-13 09:05:53 -08:00
2007-01-11 18:18:21 -08:00
2006-10-20 10:26:41 -07:00
2006-12-13 09:05:54 -08:00
2006-12-07 08:39:46 -08:00
2007-01-18 10:28:18 +00:00
2007-01-21 16:20:10 -08:00
2006-12-08 08:28:48 -08:00
2006-12-09 01:03:58 +00:00
2007-01-10 09:33:59 -08:00
2006-12-08 08:28:48 -08:00
2006-12-30 10:56:42 -08:00
2006-12-23 09:32:45 -08:00
2006-12-08 08:28:49 -08:00
2006-12-13 09:05:53 -08:00
2006-12-08 08:28:41 -08:00
2006-12-22 08:55:47 -08:00
2006-12-08 08:28:50 -08:00
2007-01-05 23:55:29 -08:00
2006-11-16 11:43:38 -08:00
2006-12-21 10:01:08 -08:00
2006-12-30 10:55:54 -08:00
2007-01-05 23:55:23 -08:00
2006-12-08 08:28:41 -08:00
2006-12-12 20:07:35 +01:00
2007-01-06 13:28:21 -08:00
2006-12-08 08:28:41 -08:00
2006-12-13 09:05:58 -08:00
2006-10-04 06:51:26 -06:00
2006-12-13 09:05:50 -08:00
2007-01-23 07:52:06 -08:00
2007-01-11 18:18:21 -08:00
2006-09-30 20:52:18 +02:00
2006-12-08 08:28:41 -08:00
2006-12-10 09:57:22 -08:00
2006-12-07 08:39:41 -08:00
2006-12-07 08:39:25 -08:00
2006-12-10 09:57:21 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:41 -08:00
2006-12-10 09:57:22 -08:00
2006-12-10 09:57:22 -08:00
2006-12-08 08:28:41 -08:00
2006-12-22 08:55:50 -08:00
2006-09-29 09:18:20 -07:00
2006-09-30 20:52:26 +02:00
2006-09-29 09:18:24 -07:00
2006-12-13 09:05:50 -08:00
2006-12-08 08:28:41 -08:00
2006-12-04 02:00:24 -05:00
2006-09-30 20:52:32 +02:00
2006-12-08 08:28:41 -08:00
2006-10-12 15:09:51 +02:00
2006-12-22 08:55:48 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:41 -08:00
2006-12-08 08:28:40 -08:00
2006-12-07 08:39:25 -08:00
2006-09-30 20:52:26 +02:00
2006-12-08 08:28:41 -08:00
2006-12-13 09:05:50 -08:00
2006-09-30 20:52:31 +02:00
2006-12-10 09:57:22 -08:00
2006-12-21 00:16:03 -08:00
2006-12-08 08:28:51 -08:00
2006-12-08 08:28:51 -08:00
2006-10-01 00:39:19 -07:00
2006-09-30 20:52:31 +02:00
2006-12-13 09:05:53 -08:00
2006-10-01 00:39:28 -07:00
2006-12-08 08:28:41 -08:00
2006-12-10 09:57:22 -08:00
2006-12-08 08:28:41 -08:00
2006-12-13 09:05:47 -08:00
2006-12-22 08:55:48 -08:00
2006-12-08 08:28:41 -08:00
2007-01-11 18:18:21 -08:00
2006-12-08 08:28:41 -08:00
2006-12-04 02:00:24 -05:00
2006-12-08 08:28:41 -08:00