[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20070920.111228.76772435.davem@davemloft.net>
Date: Thu, 20 Sep 2007 11:12:28 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: krkumar2@...ibm.com
Cc: general@...ts.openfabrics.org, netdev@...r.kernel.org,
rdreier@...co.com
Subject: Re: [Bug, PATCH and another Bug] Was: Fix refcounting problem with
netif_rx_reschedule()
From: Krishna Kumar2 <krkumar2@...ibm.com>
Date: Thu, 20 Sep 2007 10:48:15 +0530
> About the "list deletion occurs", isn't the race I mentioned still present?
> If done < budget, the driver does netif_rx_complete (at which time some
> other cpu can add this NAPI to their list). But the first cpu might do some more
> actions on the napi, like ipoib_poll() calls request_notify_cq(priv->cq),
> when other cpu might have started using this napi.
>
> (net_rx_action's 'list_move' however will not execute since work != weight)
It is the driver's responsibility to adhere to the fact that once
netif_rx_complete() is called, the driver is explicitly relinquishing
ownership of the NAPI state.
It therefore must not access that NAPI state until it has successfully
acquired the NAPI_STATE_SCHED bit atomically, via a sched or resched.
-
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