[PATCH] xfs: errors on sync superblock writes leave it locked

Dave Chinner david at fromorbit.com
Fri Jan 7 00:11:25 CST 2011


On Tue, Jan 04, 2011 at 04:43:36AM -0500, Christoph Hellwig wrote:
> I don't think the patch is quite correct.  In the old code xfs_buf_rele
> incremented the buffer reference count before calling ->b_relse,
> expecting it do decrement it again.
> 
> I think the best fix is to kill ->b_relse entirely.  We can simply
> do the buffer callback processing and b_flags updates in
> xfs_buf_iodone_callbacks.  The important thing is to not clear the
> buffer error there, so that it actually get propagated to the caller.
> As the buffer remains locked until xfs_bwrite calls xfs_buf_relse it
> can get the error reliably that way.
> 
> Patch below, but it's still running xfqa so far:

Looks sane. can i get a signed-off-by for it from you and I'll
include it in my remaining -for-2.6.38 series?

Cheers,

Dave.
-- 
Dave Chinner
david at fromorbit.com




More information about the xfs mailing list