Skip to content
  • Rick Macklem's avatar
    nfsclient: Fix the stripe unit size for a File Layout pNFS layout · 94f2e42f
    Rick Macklem authored
    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
    94f2e42f