[NETPOLL]: Set poll_owner to -1 before unlocking in netpoll_poll_unlock()
authorJeff Moyer <jmoyer@redhat.com>
Thu, 23 Jun 2005 05:04:55 +0000 (22:04 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 23 Jun 2005 05:04:55 +0000 (22:04 -0700)
This trivial patch moves the assignment of poll_owner to -1 inside of
the lock.  This fixes a potential SMP race in the code.

Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netpoll.h

index c0d8b90c520255c3ee031e77c55cd46d2b4e1a40..449a4fde6587d39002f189f73694bfb1ee7529f2 100644 (file)
@@ -53,8 +53,8 @@ static inline void netpoll_poll_lock(struct net_device *dev)
 static inline void netpoll_poll_unlock(struct net_device *dev)
 {
        if (dev->np) {
-               spin_unlock(&dev->np->poll_lock);
                dev->np->poll_owner = -1;
+               spin_unlock(&dev->np->poll_lock);
        }
 }