linux-nfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/3] NFS/localio: make the LOCALIO probe safe, repeatable and bounded
@ 2026-11-02 21:52 Mike Snitzer
  2026-11-02 21:52 ` [PATCH 1/3] NFS/localio: hold the client across an asynchronous LOCALIO probe Mike Snitzer
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Mike Snitzer @ 2026-11-02 21:52 UTC (permalink / raw)
  To: Anna Schumaker, Trond Myklebust; +Cc: linux-nfs

Hi,

Three fixes to the LOCALIO probe.

Patch 1 takes a reference on the client when nfs_local_probe_async()
queues cl_local_probe_work, and drops it once the work has run.  The work
was queued without one, so a client freed with a probe queued (e.g. at
umount after an NFSv3 I/O queued a throttled probe) left the work to run
on freed memory.

Patch 2 probes again when localio_enabled is set back to Y.  A client
that probed while localio_enabled was N was disabled by the probe, and
nothing probed it again, so it stayed on the network.  Setting
localio_enabled to Y now queues a probe for every ready client, in every
network namespace, that does not use LOCALIO.

Patch 3 gives the probe a short soft timeout of its own.  The probe's
NULL ping and UUID_IS_LOCAL used the mount's timeout, so with timeo=600 a
server that does not answer the LOCALIO program held each probe for about
170 s.  The new nfs module parameter localio_timeout (seconds, 10 by
default, at most 600; 0 keeps the mount's timeouts) bounds it: through a
proxy dropping every LOCALIO call the probe gave up after 10.6 s, and
logged nothing.

The series is based on Anna's linux-next (nfs-for-7.4-1).

Thanks,
Mike

Mike Snitzer (3):
  NFS/localio: hold the client across an asynchronous LOCALIO probe
  NFS/localio: probe again for LOCALIO when localio_enabled is set to Y
  NFS/localio: give the LOCALIO probe a short timeout of its own

 Documentation/filesystems/nfs/localio.rst |  12 +++
 fs/nfs/localio.c                          | 118 ++++++++++++++++++++--
 2 files changed, 123 insertions(+), 7 deletions(-)


base-commit: ef30b3efb7e8bae94d790a6503a595e1051323e7
-- 
2.52.0


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-11-09 15:58 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-11-02 21:52 [PATCH 0/3] NFS/localio: make the LOCALIO probe safe, repeatable and bounded Mike Snitzer
2026-11-02 21:52 ` [PATCH 1/3] NFS/localio: hold the client across an asynchronous LOCALIO probe Mike Snitzer
2026-11-02 21:52 ` [PATCH 2/3] NFS/localio: probe again for LOCALIO when localio_enabled is set to Y Mike Snitzer
2026-11-02 21:52 ` [PATCH 3/3] NFS/localio: give the LOCALIO probe a short timeout of its own Mike Snitzer
2026-11-06 22:02   ` Anna Schumaker
2026-11-09 15:10     ` Mike Snitzer
2026-11-09 15:57       ` Anna Schumaker

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).