Message ID | 20220311190617.3294919-1-tbecker@redhat.com (mailing list archive) |
---|---|
Headers | show |
Series | Introduce nfs-readahead-udev | expand |
On 3/11/22 2:06 PM, Thiago Becker wrote: > Recent changes in the linux kernel caused NFS readahead to default to > 128 from the previous default of 15 * rsize. This causes performance > penalties to some read-heavy workloads, which can be fixed by > tuning the readahead for that given mount. > > Specifically, the read troughput on a sec=krb5p mount drops by 50-75% > when comparing the default readahead with a readahead of 15360. > > Previous discussions: > https://lore.kernel.org/linux-nfs/20210803130717.2890565-1-trbecker@gmail.com/ > I attempted to add a non-kernel option to mount.nfs, and it was > rejected. > > https://lore.kernel.org/linux-nfs/20210811171402.947156-1-trbecker@gmail.com/ > Attempted to add a mount option to the kernel, rejected as well. > > I had started a separate tool to set the readahead of BDIs, but the > scope is specifically for NFS, so I would like to get the community > feeling for having this in nfs-utils. > > This patch series introduces nfs-readahead-udev, a utility to > automatically set NFS readahead when NFS is mounted. The utility is > triggered by udev when a new BDI is added, returns to udev the value of > the readahead that should be used. > > The tool currently supports setting read ahead per mountpoint, nfs major > version, or by a global default value. > > Thiago Becker (7): > Create nfs-readahead-udev > readahead: configure udev > readahead: create logging facility > readahead: only set readahead for nfs devices. > readahead: create the configuration file > readahead: add mountpoint and fstype options > readahead: documentation > > .gitignore | 6 + > configure.ac | 4 + > tools/Makefile.am | 2 +- > tools/nfs-readahead-udev/99-nfs_bdi.rules.in | 1 + > tools/nfs-readahead-udev/Makefile.am | 26 +++ > tools/nfs-readahead-udev/config_parser.c | 25 +++ > tools/nfs-readahead-udev/config_parser.h | 14 ++ > tools/nfs-readahead-udev/list.h | 48 ++++ > tools/nfs-readahead-udev/log.h | 16 ++ > tools/nfs-readahead-udev/main.c | 211 ++++++++++++++++++ > .../nfs-readahead-udev/nfs-readahead-udev.man | 47 ++++ > tools/nfs-readahead-udev/parser.y | 85 +++++++ > tools/nfs-readahead-udev/readahead.conf | 15 ++ > tools/nfs-readahead-udev/scanner.l | 19 ++ > tools/nfs-readahead-udev/syslog.c | 47 ++++ > 15 files changed, 565 insertions(+), 1 deletion(-) > create mode 100644 tools/nfs-readahead-udev/99-nfs_bdi.rules.in > create mode 100644 tools/nfs-readahead-udev/Makefile.am > create mode 100644 tools/nfs-readahead-udev/config_parser.c > create mode 100644 tools/nfs-readahead-udev/config_parser.h > create mode 100644 tools/nfs-readahead-udev/list.h > create mode 100644 tools/nfs-readahead-udev/log.h > create mode 100644 tools/nfs-readahead-udev/main.c > create mode 100644 tools/nfs-readahead-udev/nfs-readahead-udev.man > create mode 100644 tools/nfs-readahead-udev/parser.y > create mode 100644 tools/nfs-readahead-udev/readahead.conf > create mode 100644 tools/nfs-readahead-udev/scanner.l > create mode 100644 tools/nfs-readahead-udev/syslog.c > My apologies for waiting late on this... I was on PTO. I really don't like the name of the is command. It does not follow any of the naming conventions we used in the past... Can you please rename the command to nfsrahead. tia, steved.
On Tue, Mar 15, 2022 at 8:54 AM Steve Dickson <steved@redhat.com> wrote: > My apologies for waiting late on this... I was on PTO. > > I really don't like the name of the is command. It > does not follow any of the naming conventions we used in the > past... Can you please rename the command to nfsrahead. I have this on my git, I'm just waiting for more comments to release a new version. > tia, > > steved. thiago