From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45636) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XnqH7-0001e4-K9 for qemu-devel@nongnu.org; Mon, 10 Nov 2014 09:49:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XnqH1-0005YN-FX for qemu-devel@nongnu.org; Mon, 10 Nov 2014 09:49:01 -0500 Received: from mx1.redhat.com ([209.132.183.28]:49157) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XnqH1-0005YF-75 for qemu-devel@nongnu.org; Mon, 10 Nov 2014 09:48:55 -0500 Received: from int-mx13.intmail.prod.int.phx2.redhat.com (int-mx13.intmail.prod.int.phx2.redhat.com [10.5.11.26]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id sAAEmsh3002945 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL) for ; Mon, 10 Nov 2014 09:48:54 -0500 Message-ID: <5460D054.7040905@redhat.com> Date: Mon, 10 Nov 2014 15:48:52 +0100 From: Max Reitz MIME-Version: 1.0 References: <1415389165-16157-1-git-send-email-kwolf@redhat.com> <1415389165-16157-7-git-send-email-kwolf@redhat.com> In-Reply-To: <1415389165-16157-7-git-send-email-kwolf@redhat.com> Content-Type: text/plain; charset=iso-8859-15; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v2 6/9] block: Read only one sector for format probing List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Kevin Wolf , qemu-devel@nongnu.org Cc: jcody@redhat.com, armbru@redhat.com, stefanha@redhat.com On 2014-11-07 at 20:39, Kevin Wolf wrote: > The only image format driver that even potentially accesses anything > after 512 bytes in its bdrv_probe() implementation is VMDK, which reads > a plain-text descriptor file. In practice, the field it's looking for > seems to come first and will be well within the first 512 bytes, too. > > Signed-off-by: Kevin Wolf > Reviewed-by: Stefan Hajnoczi > --- > block.c | 2 +- > include/block/block_int.h | 2 ++ > 2 files changed, 3 insertions(+), 1 deletion(-) > > diff --git a/block.c b/block.c > index 2fdc33f..1fd4b8e 100644 > --- a/block.c > +++ b/block.c > @@ -682,7 +682,7 @@ static int find_image_format(BlockDriverState *bs, const char *filename, > BlockDriver **pdrv, Error **errp) > { > BlockDriver *drv; > - uint8_t buf[2048]; > + uint8_t buf[BLOCK_PROBE_BUF_SIZE]; > int ret = 0; > > /* Return the raw BlockDriver * to scsi-generic devices or empty drives */ > diff --git a/include/block/block_int.h b/include/block/block_int.h > index a1c17b9..cd94559 100644 > --- a/include/block/block_int.h > +++ b/include/block/block_int.h > @@ -57,6 +57,8 @@ > #define BLOCK_OPT_REDUNDANCY "redundancy" > #define BLOCK_OPT_NOCOW "nocow" > > +#define BLOCK_PROBE_BUF_SIZE 512 > + > typedef struct BdrvTrackedRequest { > BlockDriverState *bs; > int64_t offset; You should change the description of the buf_size parameter for bdrv_probe_all, as I wrote in my review for patch 5. With that description fixed (either here or in patch 5): Reviewed-by: Max Reitz