HomeFreeBSD

nfsclient: Fix the stripe unit size for a File Layout pNFS layout

Description

nfsclient: Fix the stripe unit size for a File Layout pNFS layout

During a recent virtual NFSv4 testing event, a bug in the FreeBSD client
was detected when doing a File Layout pNFS DS I/O operation.
The size of the I/O operation was smaller than expected.
The I/O size is specified as a stripe unit size in bits 6->31 of nflh_util
in the layout. I had misinterpreted RFC5661 and had shifted the value
right by 6 bits. The correct interpretation is to use the value as
presented (it is always an exact multiple of 64), clearing bits 0->5.
This patch fixes this.

Without the patch, I/O through the DSs work, but the I/O size is 1/64th
of what is optimal.

MFC after: 2 weeks

Details

Provenance
rmacklemAuthored on Mar 1 2021, 8:49 PM
Parents
rGc88c1f23a898: Allow ssp_test:read to pass more reliably
Branches
Unknown
Tags
Unknown