From e3725e7f5571a8129d8b2068225ef2654a5ca2ef Mon Sep 17 00:00:00 2001 From: Nelson Escobar Date: Wed, 13 Jul 2016 18:09:17 -0700 Subject: [PATCH] net/enic: fix crash on error interrupt When enic's interrupt handler is called indicating an error, it scans through the receive queues (RQs) on the adapter looking for errors. But since the inclusion of rx scatter, some of the RQs may not be in use, and you shouldn't check them for errors. Fixes: 856d7ba7ed22 ("net/enic: support scattered Rx") Signed-off-by: Nelson Escobar Reviewed-by: John Daley --- drivers/net/enic/enic_main.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/enic/enic_main.c b/drivers/net/enic/enic_main.c index 329559af85..542f0952be 100644 --- a/drivers/net/enic/enic_main.c +++ b/drivers/net/enic/enic_main.c @@ -123,6 +123,8 @@ static void enic_log_q_error(struct enic *enic) } for (i = 0; i < enic_vnic_rq_count(enic); i++) { + if (!enic->rq[i].in_use) + continue; error_status = vnic_rq_error_status(&enic->rq[i]); if (error_status) dev_err(enic, "RQ[%d] error_status %d\n", i, -- 2.20.1