qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC 2/2] hmp/qxl: info spice: add qxl0_mode & qxl0_gue


From: Alon Levy
Subject: Re: [Qemu-devel] [RFC 2/2] hmp/qxl: info spice: add qxl0_mode & qxl0_guest_bug
Date: Mon, 21 May 2012 14:35:14 +0300
User-agent: Mutt/1.5.21 (2011-07-01)

On Mon, May 21, 2012 at 11:22:16AM +0200, Gerd Hoffmann wrote:
>   Hi,
> 
> > +    if (info->qxl0_guest_bug != -1 && info->qxl0_mode != -1) {
> > +        monitor_printf(mon, " qxl0\n");
> > +        monitor_printf(mon, "   guest_bug: %"PRIu64"d\n", 
> > info->qxl0_guest_bug);
> > +        monitor_printf(mon, "        mode: %s\n",
> > +                SpiceQueryQXLMode_lookup[info->qxl0_mode]);
> > +    }
> 
> Anything else we might want export while being at it?  For example
> whenever guest drivers use sync or async io commands?
> 
> What about secondary displays?

OK, so I can fix this and remove the qxl0 hack at the same stroke. I was
looking at using the system_bus, but that seems like another hack. The
alternative is to keep a linked list of qxl devices private to qxl.c and
use that, and the below functions become

int qxl_guest_bug(int index)
int qxl_mode(int index)
int qxl_device_count(void)

How does that sound?

> 
> > +/* helpers for spice_info. only show first device */
> > +int qxl0_guest_bug(void)
> > +{
> > +    if (!qxl0) {
> > +        return -1;
> > +    }
> > +    return qxl0->guest_bug;
> > +}
> > +
> > +int qxl0_mode(void)
> > +{
> > +    if (!qxl0) {
> > +        return -1;
> > +    }
> > +    return qxl0->mode;
> > +}
> 
> Hmm, that is a bit hackish.  qxl0 exists only for the reason that
> displaychangelisteners don't support passing through a opaque pointer
> (or other way to get the state).  I'd prefer to get rid of it, not add
> more uses, although I can see that it is convenient ...
> 
> 
> cheers,
>   Gerd



reply via email to

[Prev in Thread] Current Thread [Next in Thread]