On 7 January 2013 19:32, Anthony Liguori <aligu...@us.ibm.com> wrote: > Christian Borntraeger <borntrae...@de.ibm.com> writes: > >> since >> >> commit 18b6dade8c0799c48f5c5e124b8c407cd5e22e96 >> qdev: refactor device creation to allow bus_info to be set only in class >> >> A user can specify a device that is no_user. >> For example on my i386 box, I can add a 2nd kvmvapic device. >> >> This patch checks for no-user and rejects the device_add. >> >> Signed-off-by: Christian Borntraeger <borntrae...@de.ibm.com> > > I specifically broke this when QOM was introduced because no_user > precludes a management tool from constructing a machine directlt.
You can't do that anyway... > The real problem you're trying to solve is that it's an error to have > two kvmvapic devices, not that users shouldn't be allowed to create them > via -device. That's not the only thing no-user gets used for. A bunch of the ARM sysbus devices have it set presumably because it's just flat impossible for a user to correctly create and wire in a sysbus device at all, so you might as well not confuse matters by listing them in '-device help' output. (We're not consistent about that, though.) It seems to me like arbitrarily allowing the monitor to construct no-user devices isn't really the right way to attack the problem of "allow complete machine construction by management tools"... -- PMM