[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <BAY111-W205B70ED6B226F2F9D8E2088C30@phx.gbl>
Date: Wed, 4 Feb 2009 13:17:20 -0500
From: Krishna Kothapalli <krishna_sunitha@...mail.com>
To: <kaneshige.kenji@...fujitsu.com>
CC: <ebiederm@...ssion.com>, <linux-pci@...r.kernel.org>,
<jbarnes@...tuousgeek.org>, <achiang@...com>, <djwong@...ibm.com>,
<xyzzy@...akeasy.org>, <linux-kernel@...r.kernel.org>
Subject: RE: Q: state of pci express hotplug
> Kenji Kaneshige wrote:
>
> Thank you for sending the information. I understood your
> hotplug slot can be handled by acpiphp or pciehp.
> More majordomo info at http://vger.kernel.org/majordomo-info.html
Tested this with 2.6.28.3 and details below:
>Could you give me the following additional information?
>o My understanding about the problem is:
> - Bad IRQ happen when you hot-add the device,
I don't see bad IRQ stack trace anymore, based on the steps you suggested. May be this is because I did not have hotplug driverloaded (and diff kernel build config) ?
> - and the device is not found in the lspci output
YES
> - and the device didn't show up under sysfs
> Am I correct?
YES
> o Details about the steps to reproduce the problem.
- boot the box with 2.6.28.3
- # /sbin/modprobe pciehp pciehp_debug
- lspci
- Insert the PCI express card on the hot swap slot and wait for 2 mins
- lspci <-- this does not show the PCI express device
(The same device shows up in lspci and sysfs during cold boot )
> o Does the problem happen with both acpiphp and pciehp?
That is correct.
> o The pciehp's debug output. We can get this as follows.
# /sbin/modprobe pciehp pciehp_debug
# dmesg | grep pciehp
pciehp 0000:00:09.0:pcie02: Hotplug Controller:
pciehp 0000:00:09.0:pcie02: Seg/Bus/Dev/Func/IRQ : 0000:00:09.0 IRQ 2295
pciehp 0000:00:09.0:pcie02: Vendor ID : 0x8086
pciehp 0000:00:09.0:pcie02: Device ID : 0x3410
pciehp 0000:00:09.0:pcie02: Subsystem ID : 0x0000
pciehp 0000:00:09.0:pcie02: Subsystem Vendor ID : 0x0000
pciehp 0000:00:09.0:pcie02: PCIe Cap offset : 0x90
pciehp 0000:00:09.0:pcie02: Slot Capabilities : 0x0302005f
pciehp 0000:00:09.0:pcie02: Physical Slot Number : 96
pciehp 0000:00:09.0:pcie02: Attention Button : yes
pciehp 0000:00:09.0:pcie02: Power Controller : yes
pciehp 0000:00:09.0:pcie02: MRL Sensor : yes
pciehp 0000:00:09.0:pcie02: Attention Indicator : yes
pciehp 0000:00:09.0:pcie02: Power Indicator : yes
pciehp 0000:00:09.0:pcie02: Hot-Plug Surprise : no
pciehp 0000:00:09.0:pcie02: EMI Present : yes
pciehp 0000:00:09.0:pcie02: Command Completed : yes
pciehp 0000:00:09.0:pcie02: Slot Status : 0x0020
pciehp 0000:00:09.0:pcie02: Slot Control : 0x078f
pciehp 0000:00:09.0:pcie02: Link Active Reporting supported
pciehp 0000:00:09.0:pcie02: Command not completed in 1000 msec
pciehp 0000:00:09.0:pcie02: HPC vendor_id 8086 device_id 3410 ss_vid 0 ss_did 0
pciehp 0000:00:09.0:pcie02: Command not completed in 1000 msec
pciehp 0000:00:09.0:pcie02: Registering domain:bus:dev=0000:09:00 hp_slot=0 sun=60 slot_device_offset=0
pciehp 0000:00:09.0:pcie02: get_power_status: physical_slot = 96
pciehp 0000:00:09.0:pcie02: hpc_get_power_status: SLOTCTRL a8 value read 7bf
pciehp 0000:00:09.0:pcie02: get_attention_status: physical_slot = 96
pciehp 0000:00:09.0:pcie02: hpc_get_attention_status: SLOTCTRL a8, value read 7bf
pciehp 0000:00:09.0:pcie02: get_latch_status: physical_slot = 96
pciehp 0000:00:09.0:pcie02: get_adapter_status: physical_slot = 96
pciehp 0000:00:09.0:pcie02: hpc_power_off_slot: slot->hp_slot 0
pciehp 0000:00:09.0:pcie02: Command not completed in 1000 msec
pciehp 0000:00:09.0:pcie02: hpc_power_off_slot: SLOTCTRL a8 write cmd 400
pciehp 0000:00:09.0:pcie02: service driver pciehp loaded
pciehp: pcie_port_service_register = 0
pciehp: PCI Express Hot Plug Controller Driver version: 0.4
-- Hot plug PCI express card and wait for 2 mins
-- no additional out put from dmesg
[root@...alhost test]# /sbin/rmmod pciehp
[root@...alhost test]# dmesg | grep pciehp
-- Additional output from dmesg after pciehp is unloaded ( but the express card is still present in the slot):-
pciehp: unload_pciehpd()
pciehp 0000:00:09.0:pcie02: unloading service driver pciehp
pciehp 0000:00:09.0:pcie02: release_slot: physical_slot = 96
pciehp 0000:00:09.0:pcie02: Command not completed in 1000 msec
pciehp 0000:00:09.0:pcie02: pcie_isr: intr_loc 8
pciehp 0000:00:09.0:pcie02: Presence/Notify input change
pciehp 0000:00:09.0:pcie02: Card present on Slot(øu'?)
-- removed the PCI express card from the slot
[root@...alhost test]# ls -lt /sys/bus/pci/slots
total 0
[root@...alhost test]# /sbin/modprobe acpiphp debug
[root@...alhost test]# dmesg | grep acpiphp
acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
acpiphp_glue: found PCI-to-PCI bridge at PCI 0000:00:09.0
acpiphp_glue: found ACPI PCI Hotplug slot 2 at PCI 0000:09:00
acpiphp: Slot [2] registered
acpiphp_glue: Bus 0000:09 has 1 slot
acpiphp_glue: Total 1 slots
[root@...alhost test]#
[root@...alhost test]# ls -lt /sys/bus/pci/slots
total 0
drwxr-xr-x 2 root root 0 2009-02-04 09:59 2
--- Insert PCI express card in the slot
[root@...alhost test]# dmesg | grep acpiphp
[root@...alhost test]# lspci | wc
105 1284 9203
[root@...alhost test]# ls -lt /sys/bus/pci/slots/2/
total 0
-r--r--r-- 1 root root 4096 2009-02-04 10:01 adapter
-r--r--r-- 1 root root 4096 2009-02-04 10:01 address
-rw-r--r-- 1 root root 4096 2009-02-04 10:01 attention
-r--r--r-- 1 root root 4096 2009-02-04 10:01 latch
-rw-r--r-- 1 root root 4096 2009-02-04 10:01 power
[root@...alhost test]#
[root@...alhost test]# /sbin/rmmod acpiphp
[root@...alhost test]# dmesg | grep acpiphp
acpiphp: Slot [2] unregistered
acpiphp: release_slot - physical_slot = 2
[root@...alhost test]#
_________________________________________________________________
Windows Live™: Keep your life in sync.
http://windowslive.com/howitworks?ocid=TXT_TAGLM_WL_t1_allup_howitworks_022009--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists