On Fri, Aug 29, 2014 at 10:03:59AM +0100, Stefan Hajnoczi wrote: > On Thu, Aug 28, 2014 at 09:04:21AM +0100, Richard W.M. Jones wrote: > > diff --git a/block/curl.c b/block/curl.c > > index d4b85d2..f59615d 100644 > > --- a/block/curl.c > > +++ b/block/curl.c > > @@ -352,7 +352,7 @@ static void curl_multi_timeout_do(void *arg) > > #endif > > } > > > > -static CURLState *curl_init_state(BDRVCURLState *s) > > +static CURLState *curl_init_state(BlockDriverState *bs, BDRVCURLState *s) > > { > > CURLState *state = NULL; > > int i, j; > > Why add the BDRVCURLState *s argument... > > > @@ -370,7 +370,7 @@ static CURLState *curl_init_state(BDRVCURLState *s) > > break; > > } > > if (!state) { > > - aio_poll(state->s->aio_context, true); > > + aio_poll(bdrv_get_aio_context(bs), true); > > } > > } while(!state); > > > > ...if it is not used?
I may be misunderstanding this, but BDRVCURLState *s is used elsewhere in the function. However there is a potential to derive `BDRVCURLState *s = bs->opaque;' if that's what you meant? Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com virt-builder quickly builds VMs from scratch http://libguestfs.org/virt-builder.1.html