To add pagevec so CFS can support larger than 64KB of coalesced pages on wire.
Also this will allow CFS to copy straight to the network as the implementation of buffers to resolve bug 1736236 doesn't.
Logged In: YES
FYI I've already made some progress.
Got CFS pagevec working for reads.
Correction: Without pagevec, CFS can only buffer up to 32KB on wire due to limits in lower-level RPC.
Testing send coalesced iov's to PFS for read/write. I've abandoned pagevec for kvec.
There is a race writing iov's over wire under load unless we piggyback each iov's length while marshalling - due to limitations in the generated RPC's. Until I try piggyback we avoid the race by falling back to coalesced buffered WRITE when writing over wire.
Sending the iov_len's along with each iovec for coalesced WRITE.
Note: VFS only supports up to 32KBytes per coalesced request.
Log in to post a comment.