在 2013-01-09三的 01:08 +0100,Andreas Färber写道:
Am 18.12.2012 13:41, schrieb Vasilis Liaskovitis:
Because dimm layout needs to be configured on machine-boot, all dimm devices need to be specified on startup command line (either with populated=on or with populated=off). The dimm information is stored in dimm configuration structures.
After machine startup, dimms are hot-added or removed with normal device_add and device_del operations e.g.: Hot-add syntax: "device_add dimm,id=mydimm0,bus=membus.0" Hot-remove syntax: "device_del dimm,id=mydimm0"
This sounds contradictory: Either all devices need to be specified on the command line, or they can be hot-added via monitor.
Assuming a fixed layout at startup, I wonder if there is another clever way to model this... For CPU hotplug Anthony had suggested to have a fixed set of link<Socket> properties that get set to a CPU socket as needed. Might a similar strategy work for memory, i.e. a startup-configured amount of link<DIMM>s on /machine/dimm[n] that point to a QOM DIMM object or NULL if unpopulated? Hot(un)plug would then simply work via QMP qom-set command. (CC'ing some people)
Sorry, what's link<>, did it adopted by cpu-QOM? can you give some hints?
Thanks!