From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:53707) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WLESX-0002We-LB for qemu-devel@nongnu.org; Wed, 05 Mar 2014 11:14:22 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WLESS-0002DZ-M6 for qemu-devel@nongnu.org; Wed, 05 Mar 2014 11:14:17 -0500 Received: from lnantes-156-75-100-125.w80-12.abo.wanadoo.fr ([80.12.84.125]:55737 helo=paradis.irqsave.net) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WLESS-0002DV-FI for qemu-devel@nongnu.org; Wed, 05 Mar 2014 11:14:12 -0500 Date: Wed, 5 Mar 2014 17:14:12 +0100 From: =?iso-8859-1?Q?Beno=EEt?= Canet Message-ID: <20140305161412.GH1709@irqsave.net> References: <1393860533-2063-1-git-send-email-mreitz@redhat.com> <1393860533-2063-7-git-send-email-mreitz@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline In-Reply-To: <1393860533-2063-7-git-send-email-mreitz@redhat.com> Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [PATCH 06/10] block/json: Add ioctl etc. List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Max Reitz Cc: Kevin Wolf , qemu-devel@nongnu.org, Stefan Hajnoczi The Monday 03 Mar 2014 =E0 16:28:49 (+0100), Max Reitz wrote : > Add passthrough functions for bdrv_aio_ioctl(), bdrv_is_inserted(), > bdrv_media_changed(), bdrv_eject(), bdrv_lock_medium() and bdrv_ioctl()= . >=20 > Signed-off-by: Max Reitz > --- > block/json.c | 40 ++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 40 insertions(+) >=20 > diff --git a/block/json.c b/block/json.c > index 7392802..ce718e8 100644 > --- a/block/json.c > +++ b/block/json.c > @@ -106,6 +106,14 @@ static BlockDriverAIOCB *json_aio_discard(BlockDri= verState *bs, > return bdrv_aio_discard(bs, sector_num, nb_sectors, cb, opaque); > } > =20 > +static BlockDriverAIOCB *json_aio_ioctl(BlockDriverState *bs, > + unsigned long int req, void *b= uf, > + BlockDriverCompletionFunc *cb, > + void *opaque) > +{ > + return bdrv_aio_ioctl(bs->file, req, buf, cb, opaque); > +} > + > static coroutine_fn int json_co_write_zeroes(BlockDriverState *bs, > int64_t sector_num, int n= b_sectors, > BdrvRequestFlags flags) > @@ -121,6 +129,31 @@ static coroutine_fn int64_t json_co_get_block_stat= us(BlockDriverState *bs, > (sector_num << BDRV_SECTOR_BITS); > } > =20 > +static int json_is_inserted(BlockDriverState *bs) > +{ > + return bdrv_is_inserted(bs->file); > +} > + > +static int json_media_changed(BlockDriverState *bs) > +{ > + return bdrv_media_changed(bs->file); > +} > + > +static void json_eject(BlockDriverState *bs, bool eject_flag) > +{ > + bdrv_eject(bs->file, eject_flag); > +} > + > +static void json_lock_medium(BlockDriverState *bs, bool locked) > +{ > + bdrv_lock_medium(bs->file, locked); > +} > + > +static int json_ioctl(BlockDriverState *bs, unsigned long int req, voi= d *buf) > +{ > + return bdrv_ioctl(bs->file, req, buf); > +} > + > static void json_invalidate_cache(BlockDriverState *bs) > { > return bdrv_invalidate_cache(bs->file); > @@ -165,10 +198,17 @@ static BlockDriver bdrv_json =3D { > .bdrv_aio_writev =3D json_aio_writev, > .bdrv_aio_flush =3D json_aio_flush, > .bdrv_aio_discard =3D json_aio_discard, > + .bdrv_aio_ioctl =3D json_aio_ioctl, > =20 > .bdrv_co_write_zeroes =3D json_co_write_zeroes, > .bdrv_co_get_block_status =3D json_co_get_block_status, > =20 > + .bdrv_is_inserted =3D json_is_inserted, > + .bdrv_media_changed =3D json_media_changed, > + .bdrv_eject =3D json_eject, > + .bdrv_lock_medium =3D json_lock_medium, > + .bdrv_ioctl =3D json_ioctl, > + > .bdrv_invalidate_cache =3D json_invalidate_cache, > =20 > .has_variable_length =3D true, > --=20 > 1.9.0 >=20 >=20 Reviewed-by: Benoit Canet