summaryrefslogtreecommitdiff
path: root/drivers/ieee1394
diff options
context:
space:
mode:
authorStefan Richter <stefanr@s5r6.in-berlin.de>2007-04-02 04:23:19 +0400
committerStefan Richter <stefanr@s5r6.in-berlin.de>2007-04-30 02:00:32 +0400
commit53f374e76c2b37835966382b27efb6bb3715f9d8 (patch)
treeed2016ea2c6dd65476e7c5266487945ed0613396 /drivers/ieee1394
parent099398719bb53119734354bc079840bebf1c7386 (diff)
downloadlinux-53f374e76c2b37835966382b27efb6bb3715f9d8.tar.xz
ieee1394: eth1394: hard_start_xmit is called in atomic context
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
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)
/* 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;