Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
David S. Miller [Thu, 7 Oct 2010 02:39:31 +0000 (19:39 -0700)]
Conflicts:
drivers/net/pcmcia/pcnet_cs.c
net/caif/caif_socket.c

1  2 
MAINTAINERS
drivers/net/bonding/bond_main.c
drivers/net/ll_temac_main.c
drivers/net/pcmcia/pcnet_cs.c
drivers/net/skge.c
include/linux/pci_ids.h
net/9p/client.c
net/caif/caif_socket.c
net/sunrpc/auth_gss/auth_gss.c

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc net/9p/client.c
Simple merge
@@@ -888,14 -897,23 +889,22 @@@ static int caif_connect(struct socket *
                cf_sk->sk.sk_state = CAIF_DISCONNECTED;
                goto out;
        }
-       dev = dev_get_by_index(sock_net(sk), ifindex);
+       err = -ENODEV;
+       rcu_read_lock();
+       dev = dev_get_by_index_rcu(sock_net(sk), ifindex);
+       if (!dev) {
+               rcu_read_unlock();
+               goto out;
+       }
        cf_sk->headroom = LL_RESERVED_SPACE_EXTRA(dev, headroom);
+       mtu = dev->mtu;
+       rcu_read_unlock();
        cf_sk->tailroom = tailroom;
-       cf_sk->maxframe = dev->mtu - (headroom + tailroom);
-       dev_put(dev);
+       cf_sk->maxframe = mtu - (headroom + tailroom);
        if (cf_sk->maxframe < 1) {
 -              pr_warning("CAIF: %s(): CAIF Interface MTU too small (%u)\n",
 -                         __func__, mtu);
 +              pr_warn("CAIF Interface MTU too small (%d)\n", dev->mtu);
-               err = -ENODEV;
                goto out;
        }
  
Simple merge