From d1e17defbeabf57161288ad52ce256eecdc3b407 Mon Sep 17 00:00:00 2001 From: Allan Stephens Date: Fri, 27 May 2011 13:59:17 -0400 Subject: [PATCH] --- yaml --- r: 266114 b: refs/heads/master c: bcd326e844c46e0533a79f91e75dea160469cf86 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/tipc/eth_media.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index b705ce7fb185..4ffaef4d15d7 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b4b5610223f17790419b03eaa962b0e3ecf930d7 +refs/heads/master: bcd326e844c46e0533a79f91e75dea160469cf86 diff --git a/trunk/net/tipc/eth_media.c b/trunk/net/tipc/eth_media.c index b69092eb95d8..69bedd8a297b 100644 --- a/trunk/net/tipc/eth_media.c +++ b/trunk/net/tipc/eth_media.c @@ -2,7 +2,7 @@ * net/tipc/eth_media.c: Ethernet bearer support for TIPC * * Copyright (c) 2001-2007, Ericsson AB - * Copyright (c) 2005-2007, Wind River Systems + * Copyright (c) 2005-2008, 2011, Wind River Systems * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -144,12 +144,15 @@ static int enable_bearer(struct tipc_bearer *tb_ptr) /* Find device with specified name */ + read_lock(&dev_base_lock); for_each_netdev(&init_net, pdev) { if (!strncmp(pdev->name, driver_name, IFNAMSIZ)) { dev = pdev; + dev_hold(dev); break; } } + read_unlock(&dev_base_lock); if (!dev) return -ENODEV; @@ -166,7 +169,6 @@ static int enable_bearer(struct tipc_bearer *tb_ptr) eb_ptr->tipc_packet_type.func = recv_msg; eb_ptr->tipc_packet_type.af_packet_priv = eb_ptr; INIT_LIST_HEAD(&(eb_ptr->tipc_packet_type.list)); - dev_hold(dev); dev_add_pack(&eb_ptr->tipc_packet_type); }