From d15aead4e0287de40a4ead3510804f5ac2d34268 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Mon, 5 Mar 2007 21:56:28 +0000 Subject: Only net_packet needs splimp. --- linux/dev/glue/net.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/linux/dev/glue/net.c b/linux/dev/glue/net.c index 0022f57..3ba0e0a 100644 --- a/linux/dev/glue/net.c +++ b/linux/dev/glue/net.c @@ -488,6 +488,7 @@ device_write (void *d, ipc_port_t reply_port, __skb_queue_tail (&dev->buffs[0], skb); mark_bh (NET_BH); } + splx (s); /* Send packet to filters. */ { @@ -512,11 +513,12 @@ device_write (void *d, ipc_port_t reply_port, + sizeof (struct packet_header); packet->type = header->ether_type; net_kmsg (kmsg)->sent = TRUE; /* Mark packet as sent. */ + s = splimp (); net_packet (&dev->net_data->ifnet, kmsg, packet->length, ethernet_priority (kmsg)); + splx (s); } } - splx (s); return MIG_NO_REPLY; } -- cgit v1.2.3