diff options
author | Eric Blake <eblake@redhat.com> | 2016-07-15 17:22:54 -0600 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2016-07-20 14:11:55 +0100 |
commit | 1c6c4bb7f0a4cc3987e58880ef96159985dc1228 (patch) | |
tree | 701615001a4bdce0a17e1d892c127da44ad21d8e /hw/ide | |
parent | 60ebac16bca3e3bf07c7ae67a69a7730aaa48712 (diff) | |
download | qemu-1c6c4bb7f0a4cc3987e58880ef96159985dc1228.tar.gz qemu-1c6c4bb7f0a4cc3987e58880ef96159985dc1228.tar.bz2 qemu-1c6c4bb7f0a4cc3987e58880ef96159985dc1228.zip |
block: Convert BB interface to byte-based discards
Change sector-based blk_discard(), blk_co_discard(), and
blk_aio_discard() to instead be byte-based blk_pdiscard(),
blk_co_pdiscard(), and blk_aio_pdiscard(). NBD gets a lot
simpler now that ignoring the unaligned portion of a
byte-based discard request is handled under the hood by
the block layer.
Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 1468624988-423-6-git-send-email-eblake@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Diffstat (limited to 'hw/ide')
-rw-r--r-- | hw/ide/core.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/hw/ide/core.c b/hw/ide/core.c index b1daf967d6..081c9eb765 100644 --- a/hw/ide/core.c +++ b/hw/ide/core.c @@ -423,8 +423,10 @@ static void ide_issue_trim_cb(void *opaque, int ret) } /* Got an entry! Submit and exit. */ - iocb->aiocb = blk_aio_discard(iocb->blk, sector, count, - ide_issue_trim_cb, opaque); + iocb->aiocb = blk_aio_pdiscard(iocb->blk, + sector << BDRV_SECTOR_BITS, + count << BDRV_SECTOR_BITS, + ide_issue_trim_cb, opaque); return; } |