qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] Questions about chardev (and ps/2 mouse)
@ 2011-04-05 18:55 Brian Wheeler
  2011-04-05 19:36 ` Brian Wheeler
  2011-04-05 20:29 ` Anthony Liguori
  0 siblings, 2 replies; 4+ messages in thread
From: Brian Wheeler @ 2011-04-05 18:55 UTC (permalink / raw)
  To: qemu-devel

I'm trying to disable the ps/2 mouse in favor of the serial mouse
provided by -chardev msmouse since the ps/2 mouse has had lots of
problems with older OSes (OpenStep, OS/2, Win 3.1, etc).  I've got a
couple of questions:

1) If I change a VMState something by appending a field (i.e.
"unplugged"), do I have to update version_id?  How do the
minimum_version_id{,_old} fields fit in?

2) I've had to hardcode the unplugged value in ps2_mouse_reset since the
call is pretty deep in the call stack, 8042->pckbd->ps2.  Ideally, I'd
like to set (*PS2MouseState)->unplugged from qemu_chr_open_msmouse() so
that if the serial mouse is set up the ps/2 mouse would be disabled.

3) When I enable the msmouse (via -chardev msmouse,id=mouse) qemu
segfaults.  I've traced it back to the CharDriverSTate for msmouse not
having a valid handler_opaque (it is null).  How would I connect that to
the serial port (any of them, but ideally the 2nd one)

Thanks for any hints!
Brian

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] Questions about chardev (and ps/2 mouse)
  2011-04-05 18:55 [Qemu-devel] Questions about chardev (and ps/2 mouse) Brian Wheeler
@ 2011-04-05 19:36 ` Brian Wheeler
  2011-04-05 20:29 ` Anthony Liguori
  1 sibling, 0 replies; 4+ messages in thread
From: Brian Wheeler @ 2011-04-05 19:36 UTC (permalink / raw)
  To: qemu-devel

On Tue, 2011-04-05 at 14:55 -0400, Brian Wheeler wrote:
> I'm trying to disable the ps/2 mouse in favor of the serial mouse
> provided by -chardev msmouse since the ps/2 mouse has had lots of
> problems with older OSes (OpenStep, OS/2, Win 3.1, etc).  I've got a
> couple of questions:
> 
> 1) If I change a VMState something by appending a field (i.e.
> "unplugged"), do I have to update version_id?  How do the
> minimum_version_id{,_old} fields fit in?
> 
> 2) I've had to hardcode the unplugged value in ps2_mouse_reset since the
> call is pretty deep in the call stack, 8042->pckbd->ps2.  Ideally, I'd
> like to set (*PS2MouseState)->unplugged from qemu_chr_open_msmouse() so
> that if the serial mouse is set up the ps/2 mouse would be disabled.
> 
> 3) When I enable the msmouse (via -chardev msmouse,id=mouse) qemu
> segfaults.  I've traced it back to the CharDriverSTate for msmouse not
> having a valid handler_opaque (it is null).  How would I connect that to
> the serial port (any of them, but ideally the 2nd one)
> 

Ignore the last question.  I realized I had to use:

-chardev msmouse,id=msmouse -device isa-serial,chardev=msmouse

to connect them :)



> Thanks for any hints!
> Brian
> 
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] Questions about chardev (and ps/2 mouse)
  2011-04-05 18:55 [Qemu-devel] Questions about chardev (and ps/2 mouse) Brian Wheeler
  2011-04-05 19:36 ` Brian Wheeler
@ 2011-04-05 20:29 ` Anthony Liguori
  2011-04-05 20:45   ` Peter Maydell
  1 sibling, 1 reply; 4+ messages in thread
From: Anthony Liguori @ 2011-04-05 20:29 UTC (permalink / raw)
  To: Brian Wheeler; +Cc: qemu-devel

On 04/05/2011 01:55 PM, Brian Wheeler wrote:
> I'm trying to disable the ps/2 mouse in favor of the serial mouse
> provided by -chardev msmouse since the ps/2 mouse has had lots of
> problems with older OSes (OpenStep, OS/2, Win 3.1, etc).  I've got a
> couple of questions:
>
> 1) If I change a VMState something by appending a field (i.e.
> "unplugged"), do I have to update version_id?

Yes.  You can use a subsection though to avoid bumping the version_id.

>    How do the
> minimum_version_id{,_old} fields fit in?

This is for load, not save.  It's used to basically deprecate loading 
from very old versions.


> 2) I've had to hardcode the unplugged value in ps2_mouse_reset since the
> call is pretty deep in the call stack, 8042->pckbd->ps2.  Ideally, I'd
> like to set (*PS2MouseState)->unplugged from qemu_chr_open_msmouse() so
> that if the serial mouse is set up the ps/2 mouse would be disabled.

Wouldn't it be better to just not make the PS2Mouse present in the first 
place?

> 3) When I enable the msmouse (via -chardev msmouse,id=mouse) qemu
> segfaults.  I've traced it back to the CharDriverSTate for msmouse not
> having a valid handler_opaque (it is null).  How would I connect that to
> the serial port (any of them, but ideally the 2nd one)

I haven't looked at the chardev but I suspect it's not tested often.

Regards,

Anthony Liguori

> Thanks for any hints!
> Brian
>
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [Qemu-devel] Questions about chardev (and ps/2 mouse)
  2011-04-05 20:29 ` Anthony Liguori
@ 2011-04-05 20:45   ` Peter Maydell
  0 siblings, 0 replies; 4+ messages in thread
From: Peter Maydell @ 2011-04-05 20:45 UTC (permalink / raw)
  To: Anthony Liguori; +Cc: qemu-devel

On 5 April 2011 21:29, Anthony Liguori <anthony@codemonkey.ws> wrote:
> On 04/05/2011 01:55 PM, Brian Wheeler wrote:
>>
>> I'm trying to disable the ps/2 mouse in favor of the serial mouse
>> provided by -chardev msmouse since the ps/2 mouse has had lots of
>> problems with older OSes (OpenStep, OS/2, Win 3.1, etc).  I've got a
>> couple of questions:
>>
>> 1) If I change a VMState something by appending a field (i.e.
>> "unplugged"), do I have to update version_id?
>
> Yes.  You can use a subsection though to avoid bumping the version_id.
>
>>   How do the
>> minimum_version_id{,_old} fields fit in?
>
> This is for load, not save.  It's used to basically deprecate loading from
> very old versions.

There was an email thread about this recently:
http://web.archiveorange.com/archive/v/1XS1vynR1fW0cG5xll6r

I need to go back and reread it and propose a docs patch
for people to shoot down; I think having a clear description
of "what do I have to do if I've added a new field to a device
model" is important, because that will often be the only
interaction a developer has with the migration/vmstate stuff.

-- PMM

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2011-04-05 20:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-04-05 18:55 [Qemu-devel] Questions about chardev (and ps/2 mouse) Brian Wheeler
2011-04-05 19:36 ` Brian Wheeler
2011-04-05 20:29 ` Anthony Liguori
2011-04-05 20:45   ` Peter Maydell

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).