summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvan Yan <Evan.Yan@Sun.COM>2009-03-28 22:07:55 +0800
committerEvan Yan <Evan.Yan@Sun.COM>2009-03-28 22:07:55 +0800
commitd88aab4880afecd63bed4b53ad6e225a8207e1e6 (patch)
tree76861827b48bb0fe9541b6d2447cf3f2f04f67a2
parent0a4c4cec315123d3aa1d87ee8ea976c5501de577 (diff)
downloadillumos-gate-d88aab4880afecd63bed4b53ad6e225a8207e1e6.tar.gz
6822404 IRM assumes default intr allocated 8 irrespective of the actual value.
-rw-r--r--usr/src/uts/common/os/ddi_intr_irm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/usr/src/uts/common/os/ddi_intr_irm.c b/usr/src/uts/common/os/ddi_intr_irm.c
index b96c05f5af..b1be0125be 100644
--- a/usr/src/uts/common/os/ddi_intr_irm.c
+++ b/usr/src/uts/common/os/ddi_intr_irm.c
@@ -298,7 +298,8 @@ i_ddi_irm_insert(dev_info_t *dip, int type, int count)
irm_flag = B_TRUE;
/* Determine request size */
- nreq = (irm_flag) ? count : i_ddi_intr_get_current_navail(dip, type);
+ nreq = (irm_flag) ? count :
+ MIN(count, i_ddi_intr_get_current_navail(dip, type));
nmin = (irm_flag) ? 1 : nreq;
npartial = MIN(nreq, pool_p->ipool_defsz);