HomeFreeBSD

storvsc: port a Linux patch, properly set residual data length on errors

Description

storvsc: port a Linux patch, properly set residual data length on errors

This change is based on Linux commit 40630f462824ee. csio.resid should
account for transfer_len only for success and SRB_STATUS_DATA_OVERRUN
condition.

I am not sure how exactly this change works, but I have a report from a
user that they see lots of checksum errors when running a pool scrub
concurrently with iozone -l 1 -s 100G. After applying this patch the
problem cannot be reproduced.

Reviewed by: nobody
Sponsored by: CyberSecure
Differential Revision: https://reviews.freebsd.org/D22312

Details

Provenance
avgAuthored on Jan 14 2020, 1:20 PM
Parents
rG9c6eb0f92f76: Make linux(4) use kern_setsockopt(9) instead of going through
Branches
Unknown
Tags
Unknown

Event Timeline