All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 14/17] monitor: Decouple terminals
Date: Mon, 09 Feb 2009 09:40:30 -0600	[thread overview]
Message-ID: <49904E6E.1090407@codemonkey.ws> (raw)
In-Reply-To: <499048C4.3030603@us.ibm.com>

Anthony Liguori wrote:
> I'd like to see a few changes to make things a bit closer to the long 
> term goals for the monitor (having proper multiple monitors devoid of 
> global state).
>
> Here's what I'd suggest:
>
> 1) Make monitor_printf() take a monitor state.  The easiest thing to 
> do would be to introduce this in your previous rename patch making 
> everything use current_monitor.
> 2) Introduce current_monitor and default_monitor global variables.  
> They map to what you describe above and should be maintained as such.
> 3) Make all monitor callbacks take a monitor state
> 4) Convert monitor_printf()s called from monitor callbacks to use the 
> passed monitor state
> 5) Eliminate all uses of current_monitor/default_monitor.
6) Make monitor callbacks return an error value
7) Convert all monitor callbacks to return error values instead of 
printing error messages
8) Introduce greater structure to monitor_printf()s.  For instance, we 
have a number of monitor commands that essentially print dictionaries 
(set of key value pairs).  We should introduce a higher level function 
like monitor_print_list("hd", "locked=false", "file=foo.img", NULL).
9) Introduce computer mode to monitor that makes monitor very parsable 
to a non-human user.
10) Introduce library that interacts with monitor over any supported 
character device.

Just to fill out more of my long term thinking about the monitor.

Regards,

Anthony Liguori

> I'd say, 1 and 2 are required for this patchset.  I think 3 and 4 
> would be pretty easy to add to your patchset.  I think 5 is probably 
> tougher and could wait for another day.
>
> Regards,
>
> Anthony Liguori
>
>
>

  reply	other threads:[~2009-02-09 15:40 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-07 18:16 [Qemu-devel] [PATCH 00/17] monitor rework Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 01/17] block: Polish error handling of brdv_open2 Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 02/17] block: Improve bdrv_iterate Jan Kiszka
2009-02-09 14:45   ` Anthony Liguori
2009-02-09 15:34     ` [Qemu-devel] " Jan Kiszka
2009-02-09 15:41       ` Anthony Liguori
2009-02-07 18:16 ` [Qemu-devel] [PATCH 09/17] monitor: Simplify password input mode Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 05/17] monitor: Don't change VNC server when disabled Jan Kiszka
2009-02-09 14:48   ` Anthony Liguori
2009-02-09 15:35     ` [Qemu-devel] " Jan Kiszka
2009-02-09 16:01       ` Anthony Liguori
2009-02-07 18:16 ` [Qemu-devel] [PATCH 08/17] monitor: Rework initial disk password retrieval Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 04/17] monitor: Report encrypted disks in snapshot mode Jan Kiszka
2009-02-09 14:47   ` Anthony Liguori
2009-02-09 15:35     ` [Qemu-devel] " Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 10/17] monitor: Rework terminal management Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 07/17] monitor: Introduce monitor.h and readline.h Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 03/17] block: Introduce bdrv_get_encrypted_filename Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 06/17] char-mux: Use separate input buffers Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 13/17] monitor: Introduce ReadLineState Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 16/17] monitor: Introduce MONITOR_USE_READLINE flag Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 14/17] monitor: Decouple terminals Jan Kiszka
2009-02-09 15:16   ` Anthony Liguori
2009-02-09 15:40     ` Anthony Liguori [this message]
2009-02-09 15:45     ` [Qemu-devel] " Jan Kiszka
2009-02-09 15:55       ` Anthony Liguori
2009-02-07 18:16 ` [Qemu-devel] [PATCH 12/17] monitor: Rework modal password input Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 11/17] monitor: Drop banner hiding Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 15/17] monitor: Improve mux'ed console experience Jan Kiszka
2009-02-07 18:16 ` [Qemu-devel] [PATCH 17/17] monitor: Pass-through for gdbstub Jan Kiszka

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49904E6E.1090407@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.