On Wed, Sep 14, 2011 at 05:12:48PM -0400, Stefan Berger wrote: > On 09/14/2011 01:56 PM, Michael S. Tsirkin wrote: > >On Wed, Sep 14, 2011 at 01:49:50PM -0400, Stefan Berger wrote: > >>On 09/14/2011 01:40 PM, Michael S. Tsirkin wrote: > >>>On Wed, Sep 14, 2011 at 01:05:44PM -0400, Stefan Berger wrote: > >>>>qemu ... \ > >>>> -blobstore name=my-blobstore,drive=tpm-bs,showsize \ > >>>> -drive if=none,id=tpm-bs \ > >>>> -tpmdev libtpms,blobstore=my-blobstore,id=tpm0 \ > >>>> -device tpm-tis,tpmdev=tpm0 > >>>> > >>>>which would result in QEMU printing to stdout: > >>>> > >>>>Blobstore tpm-store on drive with ID tpm-bs requires 83kb. > >>>So you envision tools parsing this freetext then? > >>>Seems like a step back, we are trying to move to QMP ... > >>I extended it first for the way I typically interact with QEMU. I do > >>not use the monitor much. > >It will work even better if there's a tool to do the job instead of cut > >and pasting stuff, won't it? And for that, we need monitor commands. > > > I am not so sure about the design of the QMP commands and how to > break things up into individual calls. So does this sequence here > and the 'query-blobstore' output look ok? > > { "execute": "qmp_capabilities" } > {"return": {}} > { "execute": "query-blobstore" } > {"return": [{"size": 84480, "id": "tpm-bs"}]}
I'll let some QMP experts to comment. We don't strictly need the id here, right? It is passed to the command. BTW is it [] or {}? It's the total size, right? Should it be {"return": {"size": 84480}} ? > > Corresponding command line parameters are: > > -tpmdev libtpms,blobstore=tpm-bs,id=tpm0 \ > -drive if=none,id=tpm-bs,file=$TPMSTATE \ > > Regards, > Stefan > > > >>>So with above, the raw case which we don't expect to be used often > >>>is easy to use, but qcow which we expect to be the main case > >>>is close to imposible, involving manual cut and paste > >>>of image size. > >>> > >>>Formatting images seems a rare enough occasion, > >>>that I think only using monitor command for that > >>>would be a better idea than a ton of new command > >>>line options. On top of that, let's write a > >>>script that run qemu, queries image size, > >>>creates a qcow2 file, run qemu again to format, > >>>all this using QMP. > >>Creates the qcow2 using 'qemu-img' I suppose. > >> > >> Stefan > >Sure. > > > >>>WRT 'format and run in one go' I strongly disagree with it. > >>>It's just too easy to shoot oneself in the foot.