Re: [net-next 00/54][pull request] Using dev_kfree/consume_skb_any for functions called in multiple contexts

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2014-03-24 at 22:58 -0700, Eric W. Biederman wrote:
> These changes are a result of walking through the network drivers
> supporting netpoll and verifying the code paths that netpoll can cause
> to be called in hard irq context use an appropriate flavor of
> kfree_skb.  Either dev_kfree_skb_any or dev_consume_skb_any.
> 
> Since my last pass at this I have become aware of the small differences
> between dev_kfree_skb_any and dev_consume_skb_any.
> net/core/drop_monitor.c reports the dev_kfree_skb_any as a drop and
> while being quite about the second.  With the weird twist that
> dev_kfree_skb is unintuitively consume_skb.
> 
> As netpoll now calls the napi poll function with budget == 0, pieces of
> a drivers the napi poll function that don't run when budget == 0 have
> been ignored.
> 
> The most interesting change is to the atl1c which tried unsuccesfully to
> tell one of it's functions which context it is called in so that it
> could call dev_kfree_skb_irq or dev_kfree_skb as appropriate.  I have
> just removed the extra parameter and called dev_consume_skb_any.
> 
> At 54 separate changes I will post each change as a separate patch (so
> they can be reviewed) but for general sanity sake I have gathered them
> all into a git branch for easy acces.
> 
> David when you are satisified with these changes please pull:
> 
>     git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/net-next.git master
> 
> Hopefully this will allow me to forget this class of error when dealing
> with netpoll.


Perfect, thanks Eric.

(the minor issues can be addressed later in a single followup)

Acked-by: Eric Dumazet <edumazet@xxxxxxxxxx>


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel Discussion]     [TCP Instrumentation]     [Ethernet Bridging]     [Linux Wireless Networking]     [Linux WPAN Networking]     [Linux Host AP]     [Linux WPAN Networking]     [Linux Bluetooth Networking]     [Linux ATH6KL Networking]     [Linux Networking Users]     [Linux Coverity]     [VLAN]     [Git]     [IETF Annouce]     [Linux Assembly]     [Security]     [Bugtraq]     [Yosemite Information]     [MIPS Linux]     [ARM Linux Kernel]     [ARM Linux]     [Linux Virtualization]     [Linux IDE]     [Linux RAID]     [Linux SCSI]