netdev
[Top] [All Lists]

[PATCH] bpqether add rcu_read_lock

To: Stephen Hemminger <shemminger@xxxxxxxx>
Subject: [PATCH] bpqether add rcu_read_lock
From: Stephen Hemminger <shemminger@xxxxxxxx>
Date: Tue, 12 Aug 2003 15:33:12 -0700
Cc: "David S. Miller" <davem@xxxxxxxxxx>, Joerg Reuter <jreuter@xxxxxxxx>, linux-hams@xxxxxxxxxxxxxxx, netdev@xxxxxxxxxxx
In-reply-to: <20030811162205.78b2029f.shemminger@xxxxxxxx>
Organization: Open Source Development Lab
References: <20030811162205.78b2029f.shemminger@xxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
Fix one comment and add rcu_read_lock/rcu_read_unlock in the 
net_device_notifier.
Preemption is almost certainly already disabled there, but be safe.

diff -Nru a/drivers/net/hamradio/bpqether.c b/drivers/net/hamradio/bpqether.c
--- a/drivers/net/hamradio/bpqether.c   Tue Aug 12 11:37:28 2003
+++ b/drivers/net/hamradio/bpqether.c   Tue Aug 12 11:37:28 2003
@@ -141,7 +141,6 @@
 
 /*
  *     Get the BPQ device for the ethernet device
- * need to hold bqp_lock at least for read
  */
 static inline struct net_device *bpq_get_ax25_dev(struct net_device *dev)
 {
@@ -564,6 +563,8 @@
        if (!dev_is_ethdev(dev))
                return NOTIFY_DONE;
 
+       rcu_read_lock();
+
        switch (event) {
        case NETDEV_UP:         /* new ethernet device -> new BPQ interface */
                if (bpq_get_ax25_dev(dev) == NULL)
@@ -582,6 +583,7 @@
        default:
                break;
        }
+       rcu_read_unlock();
 
        return NOTIFY_DONE;
 }

<Prev in Thread] Current Thread [Next in Thread>