|
From: | Gerd Hoffmann |
Subject: | Re: [Qemu-devel] [PATCH 1/2] QMP: Introduce commands doc |
Date: | Mon, 17 May 2010 21:21:02 +0200 |
User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100430 Fedora/3.0.4-2.fc12 Thunderbird/3.0.4 |
Hi,
IMO, that's a serious bug. A slot is a user visible entity, both in that devices can only be hotplugged only as slots, not functions, and to determine the maximum number of devices you can add. If the user knows about it, qemu should too. We can easily represent a slot/device as a qbus with each of the functions as devices attached to it.
Point being?
Dunno. Gerd, what do you think?
There is a PCIDevice for each function. PCIDevice->devfn (aka addr property) contains slot+function. So hw/pci.c can figure which device functions belong to the same slot. The pci hotplug code might need some fixes to handle multi-function devices correctly though (I guess this is the original issue?). unplug is probably easy, plug might be harder. You have to plug-in all functions belonging to the slot first, then signal the guest that the slot has been hotplugged, which might need changes in the monitor protocol.
cheers, Gerd
[Prev in Thread] | Current Thread | [Next in Thread] |