Re: [Nbd] [Qemu-devel] [PATCH v5 13/14] nbd: Implement NBD_CMD_WRITE_ZEROES on server
- To: Fam Zheng <famz@...696...>
- Cc: Kevin Wolf <kwolf@...696...>, nbd-general@lists.sourceforge.net, qemu-block@...530..., qemu-devel@...530..., Max Reitz <mreitz@...696...>
- Subject: Re: [Nbd] [Qemu-devel] [PATCH v5 13/14] nbd: Implement NBD_CMD_WRITE_ZEROES on server
- From: Paolo Bonzini <pbonzini@...696...>
- Date: Wed, 20 Jul 2016 04:16:28 -0400 (EDT)
- Message-id: <1514501603.8803202.1469002588620.JavaMail.zimbra@...696...>
- In-reply-to: <20160720073836.GF10539@...2425...>
- References: <1468901281-22858-1-git-send-email-eblake@...696...> <578E4708.5080308@...696...> <aad94967-fd7b-4377-ad40-3f07d67b5c32@...696...> <20160720033402.GA7641@...2425...> <578EF446.70202@...696...> <20160720043709.GA10539@...2425...> <913397c9-6edc-2561-3d2e-e32032f9db22@...696...> <20160720073836.GF10539@...2425...>
> On Wed, 07/20 09:09, Paolo Bonzini wrote:
> > On 20/07/2016 06:37, Fam Zheng wrote:
> > > Yes, you are right about this, I was confused because "qemu-img map" does
> > > not
> > > report this allocation state after zero write. (No idea why SEEK_DATA
> > > doesn't
> > > hit the fallocate'ed area.)
> >
> > Apparently it's because it's zeroed.
> >
> > $ fallocate -z -o 10485760 -l 10485760 test
> > $ fallocate -p -o 49152000 -l 10485760 test
> > $ fallocate -o 49152000 -l 10485760 test
> > $ fallocate -p -o 65536000 -l 10485760 test
> >
> > Now we have:
> >
> > - a zero area at 10240K..20480K
> >
> > - an hole+allocated area at 48000K..59240K
> >
> > - a hole at 64000K..74240K
> >
> > $ qemu-img map test
> > Offset Length Mapped to File
> > 0 0xa00000 0 test << ends at 10240K
> > 0x1400000 0x1ae0000 0x1400000 test << ends at 48000K
> > 0x38e0000 0x5a0000 0x38e0000 test << ends at 64000K
> > 0x4880000 0x1b80000 0x4880000 test
>
> Hah? I'm apparently missing something. I can't see these entries:
>
> > fam@...2426...:/var/tmp$ cat /tmp/sh
> > touch test
> > fallocate -z -o 10485760 -l 10485760 test
> > fallocate -p -o 49152000 -l 10485760 test
> > fallocate -o 49152000 -l 10485760 test
> > fallocate -p -o 65536000 -l 10485760 test
> > qemu-img map test
> > fam@...2426...:/var/tmp$ sh /tmp/sh
> > Offset Length Mapped to File
>
> (I'm using Fedora 24 but I've also tried RHEL 7.)
That was after a full allocation of a 1GB file. I didn't copy that line
because I had the file lying around from another day--sorry.
Paolo
Reply to: