summaryrefslogtreecommitdiff
path: root/usr/src/uts/i86pc/io/pci/pci_tools.c
diff options
context:
space:
mode:
authorEvan Yan <Evan.Yan@Sun.COM>2010-04-26 10:55:46 +0800
committerEvan Yan <Evan.Yan@Sun.COM>2010-04-26 10:55:46 +0800
commit4e30c628f63e2da84093e38787bb4ad00c622010 (patch)
tree7d450caaf87e934dfe9a5ac92ab5a4cb89c6d7cd /usr/src/uts/i86pc/io/pci/pci_tools.c
parentb96a6ece236756771bac978eeceb1b611c865f21 (diff)
downloadillumos-gate-4e30c628f63e2da84093e38787bb4ad00c622010.tar.gz
6930155 pcitool fails with IO error on osol_133/x6440
Diffstat (limited to 'usr/src/uts/i86pc/io/pci/pci_tools.c')
-rw-r--r--usr/src/uts/i86pc/io/pci/pci_tools.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/usr/src/uts/i86pc/io/pci/pci_tools.c b/usr/src/uts/i86pc/io/pci/pci_tools.c
index 1100e63d0b..b0e89f8b0f 100644
--- a/usr/src/uts/i86pc/io/pci/pci_tools.c
+++ b/usr/src/uts/i86pc/io/pci/pci_tools.c
@@ -336,7 +336,11 @@ pcitool_get_intr(dev_info_t *dip, void *arg, int mode)
* Fill in the pcitool_intr_get_t to be returned,
* with the CPU, num_devs_ret and num_devs.
*/
- iget->cpu_id = intr_info.avgi_cpu_id & ~PSMGI_CPU_USER_BOUND;
+ if (intr_info.avgi_cpu_id == IRQ_UNBOUND ||
+ intr_info.avgi_cpu_id == IRQ_UNINIT)
+ iget->cpu_id = 0;
+ else
+ iget->cpu_id = intr_info.avgi_cpu_id & ~PSMGI_CPU_USER_BOUND;
/* Number of devices returned by apic. */
iget->num_devs = intr_info.avgi_num_devs;