From: Stefan Richter <stefanr@s5r6.in-berlin.de>
Date: Mon, 2 Apr 2007 00:23:19 +0000 (+0200)
Subject: ieee1394: eth1394: hard_start_xmit is called in atomic context
X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=53f374e76c2b37835966382b27efb6bb3715f9d8;p=GitHub%2Fexynos8895%2Fandroid_kernel_samsung_universal8895.git

ieee1394: eth1394: hard_start_xmit is called in atomic context

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
---

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)
 /* Transmit a packet (called by kernel) */
 static int ether1394_tx(struct sk_buff *skb, struct net_device *dev)
 {
-	gfp_t kmflags = in_interrupt() ? GFP_ATOMIC : GFP_KERNEL;
 	struct eth1394hdr *eth;
 	struct eth1394_priv *priv = netdev_priv(dev);
 	__be16 proto;
@@ -1537,7 +1536,7 @@ static int ether1394_tx(struct sk_buff *skb, struct net_device *dev)
 	struct eth1394_node_ref *node;
 	struct eth1394_node_info *node_info = NULL;
 
-	ptask = kmem_cache_alloc(packet_task_cache, kmflags);
+	ptask = kmem_cache_alloc(packet_task_cache, GFP_ATOMIC);
 	if (ptask == NULL) {
 		ret = -ENOMEM;
 		goto fail;
@@ -1553,7 +1552,7 @@ static int ether1394_tx(struct sk_buff *skb, struct net_device *dev)
 	}
 #endif
 
-	skb = skb_share_check(skb, kmflags);
+	skb = skb_share_check(skb, GFP_ATOMIC);
 	if (!skb) {
 		ret = -ENOMEM;
 		goto fail;