From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45249) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1atkhe-0003tN-RD for qemu-devel@nongnu.org; Fri, 22 Apr 2016 19:41:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1atkhd-0005Qp-Kb for qemu-devel@nongnu.org; Fri, 22 Apr 2016 19:41:38 -0400 From: Eric Blake Date: Fri, 22 Apr 2016 17:40:28 -0600 Message-Id: <1461368452-10389-21-git-send-email-eblake@redhat.com> In-Reply-To: <1461368452-10389-1-git-send-email-eblake@redhat.com> References: <1461368452-10389-1-git-send-email-eblake@redhat.com> Subject: [Qemu-devel] [PATCH v3 20/44] block: Switch blk_read_unthrottled() to byte interface List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, alex@alex.org.uk, Kevin Wolf , Max Reitz , John Snow Sector-based blk_read() should die; convert the one-off variant blk_read_unthrottled(). Signed-off-by: Eric Blake --- include/sysemu/block-backend.h | 4 ++-- block/block-backend.c | 8 ++++---- hw/block/hd-geometry.c | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/sysemu/block-backend.h b/include/sysemu/block-backend.h index 6991b26..662a106 100644 --- a/include/sysemu/block-backend.h +++ b/include/sysemu/block-backend.h @@ -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, diff --git a/block/block-backend.c b/block/block-backend.c index 4551865..5513b6f 100644 --- a/block/block-backend.c +++ b/block/block-backend.c @@ -790,21 +790,21 @@ 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); bool enabled; int ret; - ret = blk_check_request(blk, sector_num, nb_sectors); + ret = blk_check_byte_request(blk, offset, count); if (ret < 0) { return ret; } enabled = bs->io_limits_enabled; bs->io_limits_enabled = false; - ret = blk_read(blk, sector_num, buf, nb_sectors); + ret = blk_pread(blk, offset, buf, count); bs->io_limits_enabled = enabled; return ret; } diff --git a/hw/block/hd-geometry.c b/hw/block/hd-geometry.c index 6d02192..d388f13 100644 --- a/hw/block/hd-geometry.c +++ b/hw/block/hd-geometry.c @@ -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 */ -- 2.5.5