/* * pmemblk_read -- read a block in a block memory pool */ int pmemblk_read(PMEMblkpool *pbp, void *buf, off_t blockno) { LOG(3, "pbp %p buf %p blockno %lld", pbp, buf, (long long)blockno); int lane = lane_enter(pbp); if (lane < 0) return -1; int err = btt_read(pbp->bttp, lane, blockno, buf); lane_exit(pbp, lane); return err; }
/* * pmemblk_read -- read a block in a block memory pool */ int pmemblk_read(PMEMblkpool *pbp, void *buf, off_t blockno) { LOG(3, "pbp %p buf %p blockno %lld", pbp, buf, (long long)blockno); if (blockno < 0) { ERR("negative block number"); errno = EINVAL; return -1; } unsigned lane; lane_enter(pbp, &lane); int err = btt_read(pbp->bttp, lane, (uint64_t)blockno, buf); lane_exit(pbp, lane); return err; }