Messages in this thread | | | Date | Tue, 13 Feb 2007 17:11:19 +1100 | From | Nick Piggin <> | Subject | Re: [PATCH] knfsd: Stop NFSD writes from being broken into lots of little writes to filesystem. |
| |
NeilBrown wrote: > Another nfsd patch for 2.6.21... > > ### Comments for Changeset > > When NFSD receives a write request, the data is typically in a number > of 1448 byte segments and writev is used to collect them together. > > Unfortunately, generic_file_buffered_write passes these to the filesystem > one at a time, so an e.g. 32K over-write becomes a series of partial-page > writes to each page, causing the filesystem to have to pre-read those > pages - wasted effort. > > generic_file_buffered_write handles one segment of the vector at a > time as it has to pre-fault in each segment to avoid deadlocks. When > writing from kernel-space (and nfsd does) this is not an issue, so > generic_file_buffered_write does not need to break and iovec from nfsd > into little pieces. > > This patch avoids the splitting when get_fs is KERNEL_DS as it is > from NFSd. > > This issue was introduced by commit 6527c2bdf1f833cc18e8f42bd97973d583e4aa83 > > Cc: Nick Piggin <nickpiggin@yahoo.com.au>
FWIW, you can put Acked-by: me there if you'd like.
Thanks, Nick
-- SUSE Labs, Novell Inc. Send instant messages to your online friends http://au.messenger.yahoo.com
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |