On Fri, 2012-06-15 at 15:15 +1000, Peter Crosthwaite wrote: > > What should really happen here, is if you do change over to a machine > opt, then all clients of the -usb should use the machine opt > infrastructure, then the need for global state is eliminated > completely. > > But does this new -usb cmd line option have any connection to the > existing -usb in this series? It looks like your trying to implement a > new option to add/remove your usb controller, in which case, I think > the best option is to do it using either configs or -device arguments.
The purpose is to have options for the ppc machines such as pseries to disable the default usb controller. IE. Those machines (well some of them at least) have no other input device (no PS/2, no ADB, ...) and so in order to provide a semi-decent user interface, we want to create an OHCI with mouse & keyboard emulation along with the vga display by default, and have options to disable those defaults for cases like libvirt where it really wants to create all that stuff itself so it gets the right names. VGA is already handled by a generic "high level" option (by opposition to using -device which I qualify of "low level") -vga which takes an argument and that argument can be "none". However, the generic "high level" -usb option doesn't take an argument and is only meant to enable, not disable (and thus cannot be augmented easily without breaking things). So after the discussion on the list, we decided that -machine options is the right way to handle that. I haven't had a chance to review Li's patch itself and whether it does that though. Just chiming in on what the intention is. Cheers, Ben.