mirror of
https://github.com/qemu/qemu.git
synced 2024-11-26 04:13:39 +08:00
block: Switch blk_read_unthrottled() to byte interface
Sector-based blk_read() should die; convert the one-off variant blk_read_unthrottled(). Signed-off-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
8341f00dc2
commit
b7d17f9fa4
@ -790,19 +790,19 @@ int blk_read(BlockBackend *blk, int64_t sector_num, uint8_t *buf,
|
||||
return blk_rw(blk, sector_num, buf, nb_sectors, blk_read_entry, 0);
|
||||
}
|
||||
|
||||
int blk_read_unthrottled(BlockBackend *blk, int64_t sector_num, uint8_t *buf,
|
||||
int nb_sectors)
|
||||
int blk_pread_unthrottled(BlockBackend *blk, int64_t offset, uint8_t *buf,
|
||||
int count)
|
||||
{
|
||||
BlockDriverState *bs = blk_bs(blk);
|
||||
int ret;
|
||||
|
||||
ret = blk_check_request(blk, sector_num, nb_sectors);
|
||||
ret = blk_check_byte_request(blk, offset, count);
|
||||
if (ret < 0) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
bdrv_no_throttling_begin(bs);
|
||||
ret = blk_read(blk, sector_num, buf, nb_sectors);
|
||||
ret = blk_pread(blk, offset, buf, count);
|
||||
bdrv_no_throttling_end(bs);
|
||||
return ret;
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ static int guess_disk_lchs(BlockBackend *blk,
|
||||
* but also in async I/O mode. So the I/O throttling function has to
|
||||
* be disabled temporarily here, not permanently.
|
||||
*/
|
||||
if (blk_read_unthrottled(blk, 0, buf, 1) < 0) {
|
||||
if (blk_pread_unthrottled(blk, 0, buf, BDRV_SECTOR_SIZE) < 0) {
|
||||
return -1;
|
||||
}
|
||||
/* test msdos magic */
|
||||
|
@ -92,8 +92,8 @@ void *blk_get_attached_dev(BlockBackend *blk);
|
||||
void blk_set_dev_ops(BlockBackend *blk, const BlockDevOps *ops, void *opaque);
|
||||
int blk_read(BlockBackend *blk, int64_t sector_num, uint8_t *buf,
|
||||
int nb_sectors);
|
||||
int blk_read_unthrottled(BlockBackend *blk, int64_t sector_num, uint8_t *buf,
|
||||
int nb_sectors);
|
||||
int blk_pread_unthrottled(BlockBackend *blk, int64_t offset, uint8_t *buf,
|
||||
int count);
|
||||
int blk_write(BlockBackend *blk, int64_t sector_num, const uint8_t *buf,
|
||||
int nb_sectors);
|
||||
int blk_write_zeroes(BlockBackend *blk, int64_t sector_num,
|
||||
|
Loading…
Reference in New Issue
Block a user