xfs_repair: fix pagefault due to unhandled NULL check in da_read_buf()
xfs_repair does not correctly handle bplist[i] for error situations in
function da_read_buf(). If libxfs_readbuf() fails then bplist[i] = NULL,
but error handing code calls libxfs_putbuf(bdlist[i]) for all indexes of i
without first checking whether its NULL. This result in pagefault in
libpthread library during pthread_mutex_unlock().
This problem is identified when we remove the storage while xfs_repair
is running on it.
Signed-off-by: Ajeet Yadav <ajeet.yadav.77@gmail.com> Signed-off-by: Christoph Hellwig <hch@lst.de>