Re: [regression] Large rsize/wsize (1MB) causes EIO after 2b092175f5e3 ("NFS: Fix inheritance of the block sizes when automounting")

Trond Myklebust
2026-03-15T14:12:36Z

On Sun, 2026-03-15 at 07:29 -0400, Jeff Layton wrote:
> Servers use the max_request_size to properly size their receive
> buffers, and the client is responsible for adhering to that value. I
> don't think you can stick a bunch of operations in a request compound
> and then put a huge WRITE at the end that blows out max_request_size,
> and expect the server to be OK with that.
>
> ISTM the client should clamp the length down to something shorter
> that
> allows the request to fit. Maybe drop the last folio and force
> another
> request? Performance would suck but it would work.
>
> All that said, the server in this case isn't sizing max_request_size
> with enough overhead for the client to actually achieve a full 1M
> write, which is just dumb. Dell should fix that.

I'm aware of what the spec says, Jeff.

We're not putting "a bunch of operations" before the WRITE. There's a
SEQUENCE, PUTFH, WRITE and GETATTR.
The point is, we expect the value of maxwrite to be set to a reasonable
value w.r.t. max_request_size so that the client doesn't have to sanity
check everybody and their dog's server.

--
Trond Myklebust
Linux NFS client maintainer, Hammerspace
trondmy@kernel.org, trond.myklebust@hammerspace.com