This code just appears to be wrong. Logically, it makes more sense to
do what the comments say.
Details
Details
Diff Detail
Diff Detail
- Repository
- rS FreeBSD src repository - subversion
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
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.