This code just appears to be wrong. Logically, it makes more sense to
do what the comments say.
Details
Details
Diff Detail
Diff Detail
- Lint
Lint Passed - Unit
No Test Coverage - Build Status
Buildable 7571 Build 7724: arc lint + arc unit
Event Timeline
Comment Actions
My worry here is that with this patch, we won't retry fsync if it failed with EIO, while with the previous code, due to the logic error, we would (at least if the failed buf was not the last one). I'm not sure if anything depends on it, though.
I'd say go for it. We can improve the semantics later, and this is an obvious bug fix.