• Dave Chinner's avatar
    xfs: fix bad dquot buffer size in log recovery readahead · 0f0d3345
    Dave Chinner authored
    xfstests xfs/087 fails 100% reliably with this assert:
    
    XFS (vdb): Mounting Filesystem
    XFS (vdb): Starting recovery (logdev: internal)
    XFS: Assertion failed: bp->b_flags & XBF_STALE, file: fs/xfs/xfs_buf.c, line: 548
    
    while trying to read a dquot buffer in xlog_recover_dquot_ra_pass2().
    
    The issue is that the buffer length to read that is passed to
    xfs_buf_readahead is in units of filesystem blocks, not disk blocks.
    (i.e. FSB, not daddr). Fix it but putting the correct conversion in
    place.
    Signed-off-by: default avatarDave Chinner <dchinner@redhat.com>
    Reviewed-by: default avatarBen Myers <bpm@sgi.com>
    Signed-off-by: default avatarBen Myers <bpm@sgi.com>
    0f0d3345
xfs_log_recover.c 122 KB