[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] feature idea: allow user to run custom scripts
From: |
Programmingkid |
Subject: |
Re: [Qemu-devel] feature idea: allow user to run custom scripts |
Date: |
Mon, 28 Sep 2015 15:43:43 -0400 |
On Sep 28, 2015, at 3:29 AM, Markus Armbruster wrote:
> Programmingkid <address@hidden> writes:
>
>> On Sep 27, 2015, at 10:30 PM, Michael Roth wrote:
>>
>>> Quoting Programmingkid (2015-09-27 20:49:24)
>>>>
>>>> On Sep 27, 2015, at 2:53 PM, Peter Crosthwaite wrote:
>>>>
>>>>> On Sun, Sep 27, 2015 at 3:13 AM, Peter Maydell
>>>>> <address@hidden> wrote:
>>>>>> On 27 September 2015 at 04:39, Programmingkid
>>>>>> <address@hidden> wrote:
>>>>>>> Would you be open to a feature that allows the user to select
>>>>>>> and run a custom file that has commands in it that would run
>>>>>>> in the monitor?
>>>>>>
>>>>>> Sounds like a VM management layer feature.
>>>>>>
>>>>>
>>>>> Should -monitor file:/foo/bar do something like this?
>>>>
>>>> If you are saying this command line argument loads monitor commands,
>>>> then it would only work when QEMU is first started. The feature I want
>>>> would work anytime during the running of QEMU.
>>>
>>> For that sort of flexibility I think writing commands to a socket via
>>> a script/program is simple enough that an additional interface doesn't
>>> seem worthwhile. Even our qtest unit tests use this approach. Plus you
>>> get the flexibility of a being able to branch based on the return
>>> value of commands (error-handling, stateful commands, incorporating
>>> output from a serial console, etc.). It seems like a nice feature but
>>> it's vastly inferior to what's possible with an external driver.
>>
>> How many people know how to communicate with QEMU via a socket?
>> How do you even do it? It doesn't sound very easy to do.
>
> It's easy, as QEMU command line goes:
>
> -qmp unix:test-hmp,server,nowait
>
> This is syntactic sugar for something like
>
> -chardev socket,id=compat_monitor1,path=sock-qmp,server=on,wait=off
> -mon mode=control,chardev=compat_monitor1
>
> The long form is more flexible. If you use it, don't use
> id=compat_monitor1, obviously.
>
> Easier on the eyes as configuration file for -readconfig:
>
> [chardev "qmp"]
> backend = "socket"
> path = "sock-qmp"
> server = "on"
> wait = "off"
>
> [mon "qmp"]
> mode = "control"
> chardev = "qmp"
>
>> A menu item
>> that displays a file open dialog is very easy to use. The user just selects
>> a file and QEMU loads and runs all the commands in it. This feature
>> would make QEMU easier to use. It would also make QEMU easily
>> expandable. Typing long commands in the monitor is difficult and
>> error prone. Saving these commands in a file would make it much
>> easier for the user. An example command someone could put in a
>> file is sending Control-Alt-Delete to the emulator. Another command
>> could be mounting an image file. This feature would make things
>> much easier for the user.
>
> You didn't mention you're talking about a *GUI* feature.
I'm thinking it would be easier to send in the patch rather than talk about
what this feature could be.
- [Qemu-devel] feature idea: allow user to run custom scripts, Programmingkid, 2015/09/26
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Peter Maydell, 2015/09/27
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Peter Crosthwaite, 2015/09/27
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Programmingkid, 2015/09/27
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Michael Roth, 2015/09/27
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Programmingkid, 2015/09/27
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Markus Armbruster, 2015/09/28
- Re: [Qemu-devel] feature idea: allow user to run custom scripts,
Programmingkid <=
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Peter Maydell, 2015/09/29
- Re: [Qemu-devel] feature idea: allow user to run custom scripts, Programmingkid, 2015/09/29