Subject: Re: [PATCH v2 19/25] netfs: Speed up buffered reading

From: Eduard Zingerman <[email-masked]>
Date: Fri, 27 Sep 2024 16:22:01 -0700

On Fri, 2024-09-27 at 22:11 +0100, David Howells wrote:

[...]

> If you look here:
> 
> 	https://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs.git/log/?h=netfs-fixes
> 
> you can see some patches I've added.  If you can try this branch or cherry
> pick:
> 
> 	netfs: Fix write oops in generic/346 (9p) and generic/074 (cifs)
> 	netfs: Advance iterator correctly rather than jumping it
> 	netfs: Use a folio_queue allocation and free functions
> 	netfs: Add a tracepoint to log the lifespan of folio_queue structs

I used your branch netfs-fixes, namely at the following commit:
8e18fe180b0a ("netfs: Abstract out a rolling folio buffer implementation")

> And then turn on the following "netfs" tracepoints:
> 
> 	read,sreq,rreq,failure,write,write_iter,folio,folioq,progress,donate
>

System can't boot, so I used the following kernel command line:
... trace_event=:netfs_read,:netfs_sreq,:netfs_rreq,:netfs_failure,:netfs_write,:netfs_write_iter,:netfs_folio,:netfs_folioq,:netfs_progress,:netfs_donate

No warnings like "Failed to enable trace event ...", so I assume it worked
as expected.

A fresh dmesg is here:
https://gist.github.com/eddyz87/e8f4780d833675a7e58854596394a70f

Don't see any tracepoint output there, so something is probably missing.

> > Alternatively I can pack this thing in a dockerfile, so that you would
> > be able to reproduce locally (but that would have to wait till my evening).
> 
> I don't have Docker set up, so I'm not sure how easy that would be for me to
> use.

What's your preferred setup for the repro?