[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] xen_disk: add discard support
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH] xen_disk: add discard support |
Date: |
Mon, 3 Feb 2014 17:21:59 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 03.02.2014 um 17:03 hat Olaf Hering geschrieben:
> On Mon, Feb 03, Kevin Wolf wrote:
>
> > Am 30.01.2014 um 16:02 hat Olaf Hering geschrieben:
> > > + case BLKIF_OP_DISCARD:
> > > + {
> > > + struct blkif_request_discard *discard_req = (void *)&ioreq->req;
> > > + bdrv_acct_start(blkdev->bs, &ioreq->acct,
> > > + discard_req->nr_sectors * BLOCK_SIZE,
> > > BDRV_ACCT_WRITE);
> >
> > Neither SCSI nor IDE account for discards. I think we should keep the
> > behaviour consistent across devices.
> >
> > If we do want to introduce accounting for discards, I'm not sure whether
> > counting them as writes or giving them their own category makes more
> > sense.
>
> This line was just copied. I have to look how virtio does it, maybe I
> copied it from there. No problem with removing it from my side.
virtio-blk doesn't support discard at all. I guess you just copied it
from the write a few lines above (and you need it if you don't want to
change the callback, because that has a bdrv_acct_end() call).
> But I think in the end a discard is also a write, isnt it?
Well... Not really, but perhaps close enough. I can think of arguments
for either way.
All that I'm really interested in is that all devices apply the same
logic for accounting discards, so we can keep a consistent meaning of
the statistics. If we want to account for them as writes here, we need
to change IDE and SCSI to do the same; and if we leave IDE and SCSI
unchanged, we can't account for discards here.
Kevin