On Wed, 23 Nov 2016, Olaf Hering wrote:
> On Wed, Nov 23, Olaf Hering wrote:
>
> > > > +if (!blk_split_discard(ioreq, req->sector_number,
> > > > req->nr_sectors)) {
> > > > +goto err;
> > > How is error handling supposed to work here?
>
> In the guest the cmd is stuck, inste
Ping.
On Fri, Nov 18, Olaf Hering wrote:
> On Fri, Nov 18, Olaf Hering wrote:
>
> > @@ -708,12 +743,10 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
> > +if (!blk_split_discard(ioreq, req->sector_number,
> > req->nr_sectors)) {
> > +goto err;
>
> How is error hand
On Wed, Nov 23, Olaf Hering wrote:
> > > +if (!blk_split_discard(ioreq, req->sector_number,
> > > req->nr_sectors)) {
> > > +goto err;
> > How is error handling supposed to work here?
In the guest the cmd is stuck, instead of getting an IO error:
[ 91.966404] mkfs.ext4
On Fri, Nov 18, Olaf Hering wrote:
> @@ -708,12 +743,10 @@ static int ioreq_runio_qemu_aio(struct ioreq *ioreq)
> +if (!blk_split_discard(ioreq, req->sector_number, req->nr_sectors)) {
> +goto err;
How is error handling supposed to work here?
Initially I forgot the "!", which
The guest sends discard requests as u64 sector/count pairs, but the
block layer operates internally with s64/s32 pairs. The conversion
leads to IO errors in the guest, the discard request is not processed.
domU.cfg:
'vdev=xvda, format=qcow2, backendtype=qdisk, target=/x.qcow2'
domU:
mkfs.e