From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34549) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VEfce-0007Ux-Ig for qemu-devel@nongnu.org; Wed, 28 Aug 2013 09:17:25 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1VEfcZ-0005Vd-5f for qemu-devel@nongnu.org; Wed, 28 Aug 2013 09:17:20 -0400 Received: from mx1.redhat.com ([209.132.183.28]:20899) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1VEfcY-0005Un-Sw for qemu-devel@nongnu.org; Wed, 28 Aug 2013 09:17:15 -0400 Date: Wed, 28 Aug 2013 15:17:24 +0200 From: Kevin Wolf Message-ID: <20130828131724.GK2743@dhcp-200-207.str.redhat.com> References: <1377081683-1600-1-git-send-email-lersek@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1377081683-1600-1-git-send-email-lersek@redhat.com> Subject: Re: [Qemu-devel] [PATCH v2 0/7] introduce BSD-licensed block driver for "raw" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Laszlo Ersek Cc: anthony@codemonkey.ws, pbonzini@redhat.com, hch@lst.de, stefanha@redhat.com, qemu-devel@nongnu.org Am 21.08.2013 um 12:41 hat Laszlo Ersek geschrieben: > v1->v2: > - added comment to raw_probe() [Kevin] > - fixed raw_reopen_prepare() [Paolo & Kevin] > - keeping BSDL: according to the v1 discussion, LGPLv2+ could work too, > but "but most of the block layer is BSD" [Paolo] and I haven't been > clearly instructed to switch to LGPLv2+. > > diff --git a/block/raw_bsd.c b/block/raw_bsd.c > index 07e6f06..ab2b0fd 100644 > --- a/block/raw_bsd.c > +++ b/block/raw_bsd.c > @@ -41,10 +41,7 @@ static QEMUOptionParameter raw_create_options[] = { > static int raw_reopen_prepare(BDRVReopenState *reopen_state, > BlockReopenQueue *queue, Error **errp) > { > - BDRVReopenState tmp = *reopen_state; > - > - tmp.bs = tmp.bs->file; > - return bdrv_reopen_prepare(&tmp, queue, errp); > + return 0; > } > > static int coroutine_fn raw_co_readv(BlockDriverState *bs, int64_t sector_num, > @@ -150,6 +147,9 @@ static void raw_close(BlockDriverState *bs) > > static int raw_probe(const uint8_t *buf, int buf_size, const char *filename) > { > + /* smallest possible positive score so that raw is used if and only if no > + * other block driver works > + */ > return 1; > } > > v1 blurb: > > Paolo asked me to write such a driver based on his textual specification > alone. The first patch captures his email in full, the rest re-quotes > parts that are being implemented. > > The tree compiles at each patch. The series passes "make check-block". > > "block/raw.c" is not removed because I wanted to keep it out of my > series and out of my brain. > > Laszlo Ersek (7): > add skeleton for BSD licensed "raw" BlockDriver > raw_bsd: emit debug events in bdrv_co_readv() and bdrv_co_writev() > raw_bsd: add raw_create() > raw_bsd: introduce "special members" > raw_bsd: add raw_create_options > raw_bsd: register bdrv_raw > switch raw block driver from "raw.o" to "raw_bsd.o" > > block/Makefile.objs | 2 +- > block/raw_bsd.c | 186 +++++++++++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 187 insertions(+), 1 deletions(-) > create mode 100644 block/raw_bsd.c Thanks, applied to the block branch. Kevin