/* re-read buffer from disk */
- ret = libxfs_readbufr_map(mp->m_ddev_targp, iocur_top->bp,
- iocur_top->bbmap->b, iocur_top->bbmap->nmaps,
- 0);
+ ret = libxfs_readbufr_map(mp->m_ddev_targp, iocur_top->bp, 0);
if (ret != 0)
dbprintf(_("read error: %s\n"), strerror(ret));
}
extern int libxfs_writebuf_int(xfs_buf_t *, int);
extern int libxfs_writebufr(struct xfs_buf *);
extern int libxfs_readbufr(struct xfs_buftarg *, xfs_daddr_t, xfs_buf_t *, int, int);
-extern int libxfs_readbufr_map(struct xfs_buftarg *, struct xfs_buf *,
- struct xfs_buf_map *, int, int);
+extern int libxfs_readbufr_map(struct xfs_buftarg *, struct xfs_buf *, int);
extern int libxfs_bhash_size;
}
int
-libxfs_readbufr_map(struct xfs_buftarg *btp, struct xfs_buf *bp,
- struct xfs_buf_map *map, int nmaps, int flags)
+libxfs_readbufr_map(struct xfs_buftarg *btp, struct xfs_buf *bp, int flags)
{
int fd = libxfs_device_to_fd(btp->dev);
int error = 0;
char *buf;
int i;
- ASSERT(BBTOB(len) <= bp->b_bcount);
-
- ASSERT(bp->b_nmaps == nmaps);
-
fd = libxfs_device_to_fd(btp->dev);
buf = bp->b_addr;
for (i = 0; i < bp->b_nmaps; i++) {
off64_t offset = LIBXFS_BBTOOFF64(bp->b_map[i].bm_bn);
int len = BBTOB(bp->b_map[i].bm_len);
- ASSERT(bp->b_map[i].bm_bn == map[i].bm_bn);
- ASSERT(bp->b_map[i].bm_len == map[i].bm_len);
-
error = __read_buf(fd, buf, len, offset, flags);
if (error) {
bp->b_error = error;
if ((bp->b_flags & (LIBXFS_B_UPTODATE|LIBXFS_B_DIRTY)))
return bp;
- error = libxfs_readbufr_map(btp, bp, map, nmaps, flags);
+ error = libxfs_readbufr_map(btp, bp, flags);
if (!error) {
bp->b_flags |= LIBXFS_B_UPTODATE;
if (bp->b_ops)