qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Question: can we hot plug a PCIe switch on machine "vir


From: Auger Eric
Subject: Re: [Qemu-devel] Question: can we hot plug a PCIe switch on machine "virt"
Date: Thu, 4 Apr 2019 09:39:13 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0

Hi Heyi,

On 4/3/19 8:50 PM, Michael S. Tsirkin wrote:
> On Wed, Apr 03, 2019 at 03:32:09PM +0800, Heyi Guo wrote:
>> Hi folks,
>>
>> In physical world, a PCIe switch including one upstream port and several 
>> downstream ports is a single physical device, however we treat each port as 
>> a device in qemu world. In qemu docs/pcie.txt, we have below statements:
>>
>> Line 230: Be aware that PCI Express Downstream Ports can't be hot-plugged 
>> into
>> Line 231: an existing PCI Express Upstream Port.
>>
>> To my understanding, it implies PCIe downstream ports *can* be hot-plugged 
>> into something which is not an existing upstream port. If it is true, how 
>> can we do that? AFAIK monitor command device_add can only add one device at 
>> a time.
>>
>> Please help to show the truth.
>>
>> Thanks,
>>
>> Heyi
>>
> 
> afaik they can only be plugged into upstearm ports with or without hotplug.

Hotplug on upstream port does not look supported, as mentionned in the doc:
(QEMU) device_add driver=xio3130-downstream id=down0 bus=upstream_port1
{"error": {"class": "GenericError", "desc": "Bus 'upstream_port1' does
not support hotplugging"}}

Looks the std way to use the downstream port is the one documented in 2.2.3:

2.2.3 Plugging a PCI Express device into a Switch:
-device ioh3420,id=root_port1,chassis=x,slot=y[,bus=pcie.0][,addr=z]
-device x3130-upstream,id=upstream_port1,bus=root_port1[,addr=x]
-device
xio3130-downstream,id=downstream_port1,bus=upstream_port1,chassis=x1,slot=y1[,addr=z1]]
-device <dev>,bus=downstream_port1

For my curiosity why do you want to hotplug a downstream port in another
place than an upstream port?

Thanks

Eric


> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]