aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ieee1394
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ieee1394')
-rw-r--r--drivers/ieee1394/eth1394.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/drivers/ieee1394/eth1394.c b/drivers/ieee1394/eth1394.c
index a6c4a375125c..b5cd10786f7e 100644
--- a/drivers/ieee1394/eth1394.c
+++ b/drivers/ieee1394/eth1394.c
@@ -1521,7 +1521,6 @@ static void ether1394_complete_cb(void *__ptask)
1521/* Transmit a packet (called by kernel) */ 1521/* Transmit a packet (called by kernel) */
1522static int ether1394_tx(struct sk_buff *skb, struct net_device *dev) 1522static int ether1394_tx(struct sk_buff *skb, struct net_device *dev)
1523{ 1523{
1524 gfp_t kmflags = in_interrupt() ? GFP_ATOMIC : GFP_KERNEL;
1525 struct eth1394hdr *eth; 1524 struct eth1394hdr *eth;
1526 struct eth1394_priv *priv = netdev_priv(dev); 1525 struct eth1394_priv *priv = netdev_priv(dev);
1527 __be16 proto; 1526 __be16 proto;
@@ -1537,7 +1536,7 @@ static int ether1394_tx(struct sk_buff *skb, struct net_device *dev)
1537 struct eth1394_node_ref *node; 1536 struct eth1394_node_ref *node;
1538 struct eth1394_node_info *node_info = NULL; 1537 struct eth1394_node_info *node_info = NULL;
1539 1538
1540 ptask = kmem_cache_alloc(packet_task_cache, kmflags); 1539 ptask = kmem_cache_alloc(packet_task_cache, GFP_ATOMIC);
1541 if (ptask == NULL) { 1540 if (ptask == NULL) {
1542 ret = -ENOMEM; 1541 ret = -ENOMEM;
1543 goto fail; 1542 goto fail;
@@ -1553,7 +1552,7 @@ static int ether1394_tx(struct sk_buff *skb, struct net_device *dev)
1553 } 1552 }
1554#endif 1553#endif
1555 1554
1556 skb = skb_share_check(skb, kmflags); 1555 skb = skb_share_check(skb, GFP_ATOMIC);
1557 if (!skb) { 1556 if (!skb) {
1558 ret = -ENOMEM; 1557 ret = -ENOMEM;
1559 goto fail; 1558 goto fail;