qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Gao,Shiyuan" via <qemu-devel@nongnu.org>
To: "imammedo@redhat.com" <imammedo@redhat.com>,
	"Daniel P. Berrangé" <berrange@redhat.com>
Cc: "qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Failed to hot-plug device to pxb bridge
Date: Thu, 30 May 2024 08:29:41 +0000	[thread overview]
Message-ID: <3A8D097B-3BA7-40DC-8DDF-D79B7BEE5CEE@baidu.com> (raw)

Hi Igor, Daniel and all:

https://lore.kernel.org/all/20220422135101.65796823@redhat.com/t/#r831d589f243c24334a09995620b74408847a87a0

This message discuss hotplug device to pxb bridge. At the end, Igor suggested enable shpc on pxb bridge:
  pxb_dev_realize_common():
     qdev_prop_set_bit(bds, PCI_BRIDGE_DEV_PROP_SHPC, true);

Howerver, I tried it and the guest can't find the device on pxb bridge. Add some log, QEMU use hotplug handler shpc_device_plug_cb.

QEMU command line:
-device pxb,bus_nr=96,id=pci.1,numa_node=0,bus=pci.0,addr=0x3
-device pxb,bus_nr=128,id=pci.2,numa_node=1,bus=pci.0,addr=0x4
-device pci-bridge,chassis_nr=3,id=pci.3,bus=pci.0,addr=0x5
-device pci-bridge,chassis_nr=4,id=pci.4,bus=pci.0,addr=0x6 
-device pci-bridge,chassis_nr=5,id=pci.5,bus=pci.1,addr=0x1 
-device pci-bridge,chassis_nr=6,id=pci.6,bus=pci.2,addr=0x1

Hotplug command:
{"execute":"human-monitor-command","arguments":{"command-line":"drive_add dummy file=/home/test/data1.img,format=qcow2,if=none,id=drive-virtio-disk1,cache=none"}}
{"execute":"device_add","arguments":{"driver":"virtio-blk-pci","scsi":"off","bus":"pci.5","addr":"0x1","drive":"drive-virtio-disk1","id":"virtio-disk1"}}

Some info in the guest:
[root@localhost ~]# lspci -tv
-+-[0000:80]---00.0-[81-82]----01.0-[82]--
 +-[0000:60]---00.0-[61-62]----01.0-[62]--
 \-[0000:00]-+-00.0  Intel Corporation 440FX - 82441FX PMC [Natoma]
             +-01.0  Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton II]
             +-01.1  Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
             +-01.2  Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II]
             +-01.3  Intel Corporation 82371AB/EB/MB PIIX4 ACPI
             +-02.0  Cirrus Logic GD 5446
             +-03.0  Red Hat, Inc. QEMU PCI Expander bridge
             +-04.0  Red Hat, Inc. QEMU PCI Expander bridge
             +-05.0-[01]--
             +-06.0-[02]--
             +-07.0  Red Hat, Inc. Virtio network device
             +-08.0  Red Hat, Inc. Virtio block device
             \-09.0  Red Hat, Inc. Virtio memory balloon
[root@localhost boot]# grep -i 'shpc' config-3.10.0-1160.83.1.el7.x86_64
CONFIG_HOTPLUG_PCI_SHPC=y
[root@localhost boot]# uname -r
3.10.0-1160.83.1.el7.x86_64

Thanks.



             reply	other threads:[~2024-05-30  8:31 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-30  8:29 Gao,Shiyuan via [this message]
     [not found] ` <20240530160919.01a3effc@imammedo.users.ipa.redhat.com>
2024-06-21  2:50   ` Failed to hot-plug device to pxb bridge Gao,Shiyuan via
2024-06-24  3:08     ` Gao,Shiyuan via
2024-06-24 10:13       ` Michael S. Tsirkin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3A8D097B-3BA7-40DC-8DDF-D79B7BEE5CEE@baidu.com \
    --to=qemu-devel@nongnu.org \
    --cc=berrange@redhat.com \
    --cc=gaoshiyuan@baidu.com \
    --cc=imammedo@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).