From: Paolo Bonzini <pbonzini@redhat.com>
To: Peter Lieven <pl@kamp.de>
Cc: kwolf@redhat.com, qemu-devel@nongnu.org, stefanha@redhat.com
Subject: Re: [Qemu-devel] [PATCH 09/11] raw-posix: implement write_zeroes with MAY_UNMAP for block devices
Date: Wed, 13 Nov 2013 15:39:43 +0100 [thread overview]
Message-ID: <52838F2F.5010404@redhat.com> (raw)
In-Reply-To: <9DB54347-EE54-4B1C-B87E-586D2FE9014A@kamp.de>
Il 13/11/2013 15:14, Peter Lieven ha scritto:
>>> >> does BLKDISCARDZEROES ioctl guarantee that a device is
>>> >> zero initialized or does it just guarantee that a discard may not
>>> >> fail and that it reads as zeroes afterwards?
>> >
>> > Only the latter. ".bdrv_has_zero_init" is only present in the bdrv_file
>> > BlockDriver.
> Then bdi->unallocated_blocks_are_zero must stay 0. .bdrv_has_zero_init's
> semantic is to reflect the zero status of all blocks of the device right after bdrv_create
> independently of their allocation status. bdi->unallocated_blocks_are_zero
> reflects the zero status of every unallocated block regardless if it was
> unallocated right from the beginning or became unallocated through a discard.
What we have is:
* bdi->unallocated_blocks_are_zero returns true
* bdrv_create doesn't ensure that every block starts unallocated
* hence bdrv_has_zero_init returns false
Blocks that (for any reason) are unallocated after bdrv_create *will* be
zero if BLKDISCARDZEROES returns true.
Paolo
next prev parent reply other threads:[~2013-11-13 14:40 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-12 15:49 [Qemu-devel] [PATCH 00/11] block & scsi: write_zeroes support through the whole stack Paolo Bonzini
2013-11-12 15:49 ` [Qemu-devel] [PATCH 01/11] block: generalize BlockLimits handling to cover bdrv_aio_discard too Paolo Bonzini
2013-11-13 6:07 ` Peter Lieven
2013-11-12 15:49 ` [Qemu-devel] [PATCH 02/11] block: add flags to BlockRequest Paolo Bonzini
2013-11-12 15:49 ` [Qemu-devel] [PATCH 03/11] block: add bdrv_aio_write_zeroes Paolo Bonzini
2013-11-12 15:49 ` [Qemu-devel] [PATCH 04/11] scsi-disk: catch write protection errors in UNMAP Paolo Bonzini
2013-11-12 15:49 ` [Qemu-devel] [PATCH 05/11] scsi-disk: reject ANCHOR=1 for UNMAP and WRITE SAME commands Paolo Bonzini
2013-11-13 19:03 ` Eric Blake
2013-11-12 15:49 ` [Qemu-devel] [PATCH 06/11] scsi-disk: correctly implement WRITE SAME Paolo Bonzini
2013-11-13 6:18 ` Peter Lieven
2013-11-13 9:38 ` Paolo Bonzini
2013-11-12 15:49 ` [Qemu-devel] [PATCH 07/11] block: handle ENOTSUP from discard in generic code Paolo Bonzini
2013-11-12 15:49 ` [Qemu-devel] [PATCH 08/11] raw-posix: implement write_zeroes with MAY_UNMAP for files Paolo Bonzini
2013-11-13 6:27 ` Peter Lieven
2013-11-13 6:30 ` Peter Lieven
2013-11-12 15:49 ` [Qemu-devel] [PATCH 09/11] raw-posix: implement write_zeroes with MAY_UNMAP for block devices Paolo Bonzini
2013-11-13 6:29 ` Peter Lieven
2013-11-13 9:44 ` Paolo Bonzini
2013-11-13 14:14 ` Peter Lieven
2013-11-13 14:39 ` Paolo Bonzini [this message]
2013-11-13 14:45 ` Peter Lieven
2013-11-12 15:49 ` [Qemu-devel] [PATCH 10/11] raw-posix: add support for write_zeroes on XFS and " Paolo Bonzini
2013-11-12 15:49 ` [Qemu-devel] [PATCH 11/11] qemu-iotests: 033 is fast Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52838F2F.5010404@redhat.com \
--to=pbonzini@redhat.com \
--cc=kwolf@redhat.com \
--cc=pl@kamp.de \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).