Re: [RFC PATCH] getvalues(2) prototype

Greg KH
2022-03-25T08:54:34Z

On Fri, Mar 25, 2022 at 09:46:46AM +0100, Karel Zak wrote:
> On Thu, Mar 24, 2022 at 09:44:38AM +0100, Miklos Szeredi wrote:
> > > If so, have you benchmarked lsof using this new interface?
> >
> > Not yet. Looked yesterday at both lsof and procps source code, and
> > both are pretty complex and not easy to plug in a new interface. But
> > I've not yet given up...
>
> I can imagine something like getvalues(2) in lsblk (based on /sys) or
> in lsfd (based on /proc; lsof replacement). The tools have defined set
> of information to read from kernel, so gather all the requests to the
> one syscall for each process or block device makes sense and it will
> dramatically reduce number of open+read+close syscalls.

And do those open+read+close syscalls actually show up in measurements?

Again, I tried to find a real-world application that turning those 3
into 1 would matter, and I couldn't. procps had no decreased system
load that I could notice. I'll mess with lsof but that's really just a
stress-test, not anything that is run all the time, right?

And as others have said, using io_uring() would also solve the 3 syscall
issue, but no one seems to want to convert these tools to use that,
which implies that it's not really an issue for anyone :)

thanks,

greg k-h