[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <979A8436335E3744ADCD3A9F2A2B68A52ABF944F@SJEXCHMB10.corp.ad.broadcom.com>
Date: Wed, 27 Mar 2013 21:08:17 +0000
From: "Yuval Mintz" <yuvalmin@...adcom.com>
To: "David Miller" <davem@...emloft.net>
cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"Ariel Elior" <ariele@...adcom.com>,
"Eilon Greenstein" <eilong@...adcom.com>
Subject: RE: [PATCH net-next] bnx2x: handle spurious interrupts
> > Since the driver must request the IRQ prior to enabling HW generation of
> > interrupts, it would still need to ignore every interrupt arriving during that
> > interval.
>
> This is the real issue.
>
> request_irq() must not be invoked until you are ready to handle
> interrupts, and this means initializing any and all software
> datastructures that might be accessed in the interrupt handler.
>
> If this requirement is met, seeing NULL pointers is not possible.
I agree we won't be seeing NULL pointers, but that's only the manifestation of the
problem, not the problem itself - if we would have handled those spurious
interrupts in the same manner we do regular ones, we might leave HW in an
unsteady state.
The real issue (well, both are real but this is the one THIS patch tries
solving, while the one you describe is the one I've named `orthogonal') is that
there exists a scenario in which the HW generates an interrupt although it's
configured not to do so, and the bnx2x driver shouldn't ACK but rather discard it.
> I still reject this patch, please fix the fundamental issue instead,
> thanks.
This is of course your prerogative.
We will work on solving both issues.
Thanks,
Yuval
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists