Commit 3f954b30 authored by Aaron Jacobs's avatar Aaron Jacobs

Enable async reads.

As best I can tell, this instructs the kernel not to synchronize on the
completion of a read request before sending further requests. This
definitely means further read requests, but I believe it means any sort
of request as well. It appears to make a big difference to gcsfuse read
support.
parent 01144536
......@@ -158,7 +158,13 @@ func (c *Connection) Init() (err error) {
initOp.Library = c.protocol
initOp.MaxReadahead = maxReadahead
initOp.MaxWrite = buffer.MaxWriteSize
initOp.Flags = fusekernel.InitBigWrites
// Tell the kernel not to use pitifully small 4 KiB writes.
initOp.Flags |= fusekernel.InitBigWrites
// Tell the kernel it is free to send further requests while a read request
// is in flight.
initOp.Flags |= fusekernel.InitAsyncRead
c.Reply(ctx, nil)
return
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment