From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48227) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bFkRD-0002Lf-3h for qemu-devel@nongnu.org; Wed, 22 Jun 2016 11:51:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bFkR7-0002B0-5E for qemu-devel@nongnu.org; Wed, 22 Jun 2016 11:51:34 -0400 From: Eric Blake Date: Wed, 22 Jun 2016 09:50:57 -0600 Message-Id: <1466610674-23157-1-git-send-email-eblake@redhat.com> Subject: [Qemu-devel] [PATCH 00/17] byte-based block discard List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: qemu-block@nongnu.org, kwolf@redhat.com Another step towards making NBD pass a byte-aligned discard request over the wire. Actually, until both raw_bsd.c and nbd-client.c support .bdrv_co_preadv(), the block layer still sets up a required_alignment of 512, so with this series alone, the NBD_CMD_TRIM requests are still aligned to sector boundaries (but now the logic is central to the block layer rather than NBD). So you can probably figure out what my next series will be :) Prerequisite: Kevin's block branch, plus my work on byte-based block limits (v2 at the moment): https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg04006.html and tested (but probably not hard requirement) on top of my work on auto-fragmenting: https://lists.gnu.org/archive/html/qemu-devel/2016-06/msg05819.html Also available as a tag at: git fetch git://repo.or.cz/qemu/ericb.git nbd-discard-v1 Eric Blake (17): block: Convert bdrv_co_discard() to byte-based block: Convert bdrv_discard() to byte-based block: Switch BlockRequest to byte-based block: Convert bdrv_aio_discard() to byte-based block: Convert BB interface to byte-based discards raw-posix: Switch paio_submit() to byte-based rbd: Switch rbd_start_aio() to byte-based block: Convert .bdrv_aio_discard() to byte-based block: Add .bdrv_co_pdiscard() driver callback blkreplay: Switch .bdrv_co_discard() to byte-based gluster: Switch .bdrv_co_discard() to byte-based iscsi: Switch .bdrv_co_discard() to byte-based nbd: Switch .bdrv_co_discard() to byte-based qcow2: Switch .bdrv_co_discard() to byte-based raw_bsd: Switch .bdrv_co_discard() to byte-based sheepdog: Switch .bdrv_co_discard() to byte-based block: Kill .bdrv_co_discard() block/nbd-client.h | 3 +- include/block/block.h | 10 +-- include/block/block_int.h | 8 +-- include/sysemu/block-backend.h | 9 ++- block/blkreplay.c | 8 +-- block/block-backend.c | 22 +++--- block/gluster.c | 14 ++-- block/io.c | 156 ++++++++++++++++++++--------------------- block/iscsi.c | 18 +++-- block/mirror.c | 5 +- block/nbd-client.c | 11 +-- block/nbd.c | 12 +--- block/qcow2-refcount.c | 4 +- block/qcow2.c | 10 +-- block/raw-posix.c | 24 +++---- block/raw-win32.c | 19 ++--- block/raw_bsd.c | 8 +-- block/rbd.c | 29 ++++---- block/sheepdog.c | 17 +++-- hw/block/xen_disk.c | 7 +- hw/ide/core.c | 6 +- hw/scsi/scsi-disk.c | 8 +-- nbd/server.c | 19 ++--- qemu-io-cmds.c | 3 +- block/trace-events | 4 +- 25 files changed, 209 insertions(+), 225 deletions(-) -- 2.5.5