On Monday, January 29, 2024 3:22:15 PM CET David Howells wrote: > Christian Schoenebeck <linux_oss@xxxxxxxxxxxxx> wrote: > > > > (1) Enable large folio support for 9p. This is handled entirely by > > > netfslib and is already supported in afs. I wonder if we should limit > > > the maximum folio size to 1MiB to match the maximum I/O size in the 9p > > > protocol. > > > > The limit depends on user's 'msize' 9p client option and on the 9p transport > > implementation. The hard limit with virtio transport for instance is currently > > just 500k (patches for virtio 4MB limit fetching dust unfortunately). > > Okay. Is that 500KiB or 512Kib? 'msize' is currently hard limited by virtio transport to exactly 512000. For rdma and fd transports it's both exactly 1MiB. For xen transport it should be exactly 524288 (could be lowered though depending on configured xen ring size). You find the individual transports to fill the field 'maxsize' accordingly (in net/9p/trans_*.c). So that's the maximum message size. Then the individual 9p message header size needs to be subtracted. For Twrite request that's -23, for Rread response that's -11. > > Would you see an advantage to limit folio size? I mean p9_client_read() etc. > > are automatically limiting the read/write chunk size accordingly. > > For reads not so much, but for writes it would mean that a dirty folio is > either entirely written or entirely failed. I don't know how important this > would be for the 9p usecases. > > David > >