HomeFreeBSD

Fix the pNFS flexible file layout client for servers with small write size.

Description

Fix the pNFS flexible file layout client for servers with small write size.

The code in nfscl_dofflayout() loops when a flexible file layout server
provides a small write data limit (no extant server is known to do this).
If/when it looped, it erroneously reused the "drpc" argument for the
mirror worker thread, corrupting it.
This patch fixes the problem by only using the calling thread after the
first loop iteration.

Found during testing by simulating a server with a small write size.

Since no extant pNFS server is known to provide a small write size,
this fix it not needed in practice at this time.

Details

Provenance
rmacklemAuthored on
Parents
rS363266: Revert r240317 to prevent leaking pmap entries
Branches
Unknown
Tags
Unknown