mirror of
https://github.com/torvalds/linux.git
synced 2024-11-02 02:01:29 +00:00
IB/qib: Fix multi-Florida HCA host panic on reboot
Add check when setting configured contexts that the value does not exceed the number of contexts allocated for the card. If the value exceeds the already allocated count, set it to what is already allocated. Signed-off-by: Mike Marciniszyn <mike.marciniszyn@qlogic.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
b3d5cb2f20
commit
5dbbcb97cc
@ -92,9 +92,11 @@ unsigned long *qib_cpulist;
|
||||
/* set number of contexts we'll actually use */
|
||||
void qib_set_ctxtcnt(struct qib_devdata *dd)
|
||||
{
|
||||
if (!qib_cfgctxts)
|
||||
if (!qib_cfgctxts) {
|
||||
dd->cfgctxts = dd->first_user_ctxt + num_online_cpus();
|
||||
else if (qib_cfgctxts < dd->num_pports)
|
||||
if (dd->cfgctxts > dd->ctxtcnt)
|
||||
dd->cfgctxts = dd->ctxtcnt;
|
||||
} else if (qib_cfgctxts < dd->num_pports)
|
||||
dd->cfgctxts = dd->ctxtcnt;
|
||||
else if (qib_cfgctxts <= dd->ctxtcnt)
|
||||
dd->cfgctxts = qib_cfgctxts;
|
||||
|
Loading…
Reference in New Issue
Block a user