[ofa-general] Re: [PATCH 1/2] IPoIB: Fix unregister_netdev hang

Krishna Kumar2 krkumar2 at in.ibm.com
Tue Sep 18 20:23:55 PDT 2007


Hi Roland,

Roland Dreier <rdreier at cisco.com> wrote on 09/18/2007 07:57:24 PM:

>  > While using IPoIB over EHCA (rc6 bits), unregister_netdev hangs with
>
> I don't think you're actually using rc6 bits, since in your patch you
have:
>
>  > -poll_more:
>
> and I think that is only in Dave's net-2.6.24 tree now, right?

Nope, that was what I downloaded yesterday:

VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 23
EXTRAVERSION =-rc6
NAME = Pink Farting Weasel

> > +                    if (likely(!ib_req_notify_cq(priv->cq,
> > +
IB_CQ_NEXT_COMP |
> > +
IB_CQ_REPORT_MISSED_EVENTS)))
>
> It is possible for an interrupt to happen immediately right here,
> before the netif_rx_complete(), so that netif_rx_schedule() gets
> called while we are still on the poll list.
>
> > +                                netif_rx_complete(dev, napi);

To be clear, netif_rx_schedule while we are still in the poll list will not
do any harm as it does nothing since NAPI_STATE_SCHED is still set (cleared
by netif_rx_complete which has not yet run). Effectively we lost/delayed
processing an interrupt, if I understood the code right.

I agree with you on the new patch.

thanks,

- KK




More information about the general mailing list