HomeFreeBSD

Fix devstat on md devices.

Description

Fix devstat on md devices.

devstat_end_transaction() was called before the i/o was actually ended
(by delivering it to GEOM), so at least the i/o length was messed up.
It was always recorded as 0, so the average transaction size and the
average transfer rate was always displayed as 0.

devstat_end_transaction() was not called at all for the error case, so
there were sometimes multiple starts per end. I didn't observe this in
practice and don't know if it did much damage. I think it extended the
length of the i/o to the next transaction.

Reviewed by: kib

Details

Provenance
bdeAuthored on
Reviewer
kib
Parents
rS341764: Merge ^/head r340918 through r341763.
Branches
Unknown
Tags
Unknown