CVSROOT:        /cvs
Module name:    src
Changes by:     k...@cvs.openbsd.org    2011/06/26 19:14:24

Modified files:
        sys/arch/amd64/amd64: dkcsum.c 
        sys/arch/i386/i386: dkcsum.c 

Log message:
Ensure we don't re-issue a failed buf without clearing B_ERROR and
b_error. Otherwise a good i/o will appear to have failed. Fixes
problem with dkcsum.c being unable to read data to checksum from
subsequent devices after an i/o fails. And thus failing to find
correct root in some cases.

Introduced at k2k11 with buf flags rectification. Scan of all
biowait() calls finds no other obvious re-use of a buf that could
have error'ed out. Just re-use of bufs that worked. So quick fix
pending closer review of all uses.

Problem noted by Jens A. Griepen.

ok matthew@ deraadt@

Reply via email to