]> git.baikalelectronics.ru Git - kernel.git/commit
atl1c: Call dev_kfree/consume_skb_any instead of dev_kfree_skb.
authorEric W. Biederman <ebiederm@xmission.com>
Sat, 15 Mar 2014 22:58:10 +0000 (15:58 -0700)
committerEric W. Biederman <ebiederm@xmission.com>
Tue, 25 Mar 2014 04:18:54 +0000 (21:18 -0700)
commitd412fd24e991c49c08e3e9aa3974ddc034315ba4
treeab0bf0b68762265c17c3766489ec2285f527c99a
parent8fd6c34c2eba9a728e60a730682a8fe31e67b86c
atl1c: Call dev_kfree/consume_skb_any instead of dev_kfree_skb.

The call path: atl1c_xmit_frame, atlc_tx_rollback, atl1c_clean_buffer
can not be tell at compile time if it will be invoked from hard irq
or other context, as atl1c_xmit_frame does not know.  So remove
the logic that  passes the compile time knowledge into al1c_clean_buffer
and figure out it out at runtime with dev_consume_skb_any.

Replace dev_kfree_skb with dev_kfree_skb_any in atl1c_xmit_frame that
can be called in hard irq and other contexts.

Replace dev_kfree_skb and dev_kfree_skb_irq with dev_consume_skb_any
in atl1c_clean_buffer that can be called in hard irq and other
contexts.

Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
drivers/net/ethernet/atheros/atl1c/atl1c_main.c