Author: marek
Date: 2010-08-20 21:16:07 +0200 (Fri, 20 Aug 2010)
New Revision: 1772
Modified:
trunk/batman-adv/gateway_client.c
trunk/batman-adv/hard-interface.c
trunk/batman-adv/originator.c
trunk/batman-adv/routing.c
trunk/batman-adv/send.c
trunk/batman-adv/types.h
Log:
batman-adv: Remove duplicate of attached device name
batman_if has the name of the net_dev as extra string in its own
structure, but also holds a reference to the actual net_device structure
which always has the current name of the device. This makes it
unneccessary and also more complex because we must update the name in
situations when we receive a NETDEV_CHANGENAME event.
Signed-off-by: Sven Eckelmann <sven.eckelmann(a)gmx.de>
Modified: trunk/batman-adv/gateway_client.c
===================================================================
--- trunk/batman-adv/gateway_client.c 2010-08-20 19:16:04 UTC (rev 1771)
+++ trunk/batman-adv/gateway_client.c 2010-08-20 19:16:07 UTC (rev 1772)
@@ -321,7 +321,7 @@
gw_str,
gw_node->orig_node->router->tq_avg,
router_str,
- gw_node->orig_node->router->if_incoming->dev,
+ gw_node->orig_node->router->if_incoming->net_dev->name,
gw_node->orig_node->gw_flags,
(down > 2048 ? down / 1024 : down),
(down > 2048 ? "MBit" : "KBit"),
@@ -358,8 +358,8 @@
"[B.A.T.M.A.N. adv %s%s, MainIF/MAC: %s/%s (%s)]\n",
"Gateway", "#", TQ_MAX_VALUE, "Nexthop",
"outgoingIF", SOURCE_VERSION, REVISION_VERSION_STR,
- bat_priv->primary_if->dev, bat_priv->primary_if->addr_str,
- net_dev->name);
+ bat_priv->primary_if->net_dev->name,
+ bat_priv->primary_if->addr_str, net_dev->name);
rcu_read_unlock();
rcu_read_lock();
Modified: trunk/batman-adv/hard-interface.c
===================================================================
--- trunk/batman-adv/hard-interface.c 2010-08-20 19:16:04 UTC (rev 1771)
+++ trunk/batman-adv/hard-interface.c 2010-08-20 19:16:07 UTC (rev 1772)
@@ -161,7 +161,7 @@
continue;
pr_warning("The newly added mac address (%pM) already exists "
- "on: %s\n", addr, batman_if->dev);
+ "on: %s\n", addr, batman_if->net_dev->name);
pr_warning("It is strongly recommended to keep mac addresses "
"unique to avoid problems!\n");
}
@@ -227,7 +227,7 @@
set_primary_if(bat_priv, batman_if);
bat_info(batman_if->soft_iface, "Interface activated: %s\n",
- batman_if->dev);
+ batman_if->net_dev->name);
update_min_mtu(batman_if->soft_iface);
return;
@@ -244,7 +244,7 @@
batman_if->if_status = IF_INACTIVE;
bat_info(batman_if->soft_iface, "Interface deactivated: %s\n",
- batman_if->dev);
+ batman_if->net_dev->name);
update_min_mtu(batman_if->soft_iface);
}
@@ -275,7 +275,7 @@
if (!batman_if->packet_buff) {
bat_err(batman_if->soft_iface, "Can't add interface packet "
- "(%s): out of memory\n", batman_if->dev);
+ "(%s): out of memory\n", batman_if->net_dev->name);
goto err;
}
@@ -300,7 +300,7 @@
atomic_set(&batman_if->seqno, 1);
atomic_set(&batman_if->frag_seqno, 1);
bat_info(batman_if->soft_iface, "Adding interface: %s\n",
- batman_if->dev);
+ batman_if->net_dev->name);
if (atomic_read(&bat_priv->frag_enabled) && batman_if->net_dev->mtu <
ETH_DATA_LEN + BAT_HEADER_LEN)
@@ -310,7 +310,7 @@
"over this interface will be fragmented on layer2 "
"which could impact the performance. Setting the MTU "
"to %zi would solve the problem.\n",
- batman_if->dev, batman_if->net_dev->mtu,
+ batman_if->net_dev->name, batman_if->net_dev->mtu,
ETH_DATA_LEN + BAT_HEADER_LEN);
if (!atomic_read(&bat_priv->frag_enabled) && batman_if->net_dev->mtu <
@@ -320,7 +320,7 @@
"the transport of batman-adv packets. If you experience"
" problems getting traffic through try increasing the "
"MTU to %zi.\n",
- batman_if->dev, batman_if->net_dev->mtu,
+ batman_if->net_dev->name, batman_if->net_dev->mtu,
ETH_DATA_LEN + BAT_HEADER_LEN);
if (hardif_is_iface_up(batman_if))
@@ -328,7 +328,7 @@
else
bat_err(batman_if->soft_iface, "Not using interface %s "
"(retrying later): interface not active\n",
- batman_if->dev);
+ batman_if->net_dev->name);
/* begin scheduling originator messages on that interface */
schedule_own_packet(batman_if);
@@ -351,7 +351,7 @@
return;
bat_info(batman_if->soft_iface, "Removing interface: %s\n",
- batman_if->dev);
+ batman_if->net_dev->name);
dev_remove_pack(&batman_if->batman_adv_ptype);
bat_priv->num_ifaces--;
@@ -393,13 +393,9 @@
goto out;
}
- batman_if->dev = kstrdup(net_dev->name, GFP_ATOMIC);
- if (!batman_if->dev)
- goto free_if;
-
ret = sysfs_add_hardif(&batman_if->hardif_obj, net_dev);
if (ret)
- goto free_dev;
+ goto free_if;
batman_if->if_num = -1;
batman_if->net_dev = net_dev;
@@ -411,8 +407,6 @@
list_add_tail_rcu(&batman_if->list, &if_list);
return batman_if;
-free_dev:
- kfree(batman_if->dev);
free_if:
kfree(batman_if);
out:
@@ -423,7 +417,6 @@
{
struct batman_if *batman_if = container_of(rcu, struct batman_if, rcu);
- kfree(batman_if->dev);
kfree(batman_if);
}
@@ -474,8 +467,6 @@
case NETDEV_UNREGISTER:
hardif_remove_interface(batman_if);
break;
- case NETDEV_CHANGENAME:
- break;
case NETDEV_CHANGEADDR:
if (batman_if->if_status == IF_NOT_IN_USE)
goto out;
Modified: trunk/batman-adv/originator.c
===================================================================
--- trunk/batman-adv/originator.c 2010-08-20 19:16:04 UTC (rev 1771)
+++ trunk/batman-adv/originator.c 2010-08-20 19:16:07 UTC (rev 1772)
@@ -216,7 +216,7 @@
"neighbor purge: originator %pM, "
"neighbor: %pM, iface: %s\n",
orig_node->orig, neigh_node->addr,
- neigh_node->if_incoming->dev);
+ neigh_node->if_incoming->net_dev->name);
else
bat_dbg(DBG_BATMAN, bat_priv,
"neighbor timeout: originator %pM, "
@@ -338,8 +338,8 @@
rcu_read_lock();
seq_printf(seq, "[B.A.T.M.A.N. adv %s%s, MainIF/MAC: %s/%s (%s)]\n",
SOURCE_VERSION, REVISION_VERSION_STR,
- bat_priv->primary_if->dev, bat_priv->primary_if->addr_str,
- net_dev->name);
+ bat_priv->primary_if->net_dev->name,
+ bat_priv->primary_if->addr_str, net_dev->name);
seq_printf(seq, " %-15s %s (%s/%i) %17s [%10s]: %20s ...\n",
"Originator", "last-seen", "#", TQ_MAX_VALUE, "Nexthop",
"outgoingIF", "Potential nexthops");
@@ -367,7 +367,7 @@
seq_printf(seq, "%-17s %4i.%03is (%3i) %17s [%10s]:",
orig_str, last_seen_secs, last_seen_msecs,
orig_node->router->tq_avg, router_str,
- orig_node->router->if_incoming->dev);
+ orig_node->router->if_incoming->net_dev->name);
list_for_each_entry(neigh_node, &orig_node->neigh_list, list) {
addr_to_string(orig_str, neigh_node->addr);
Modified: trunk/batman-adv/routing.c
===================================================================
--- trunk/batman-adv/routing.c 2010-08-20 19:16:04 UTC (rev 1771)
+++ trunk/batman-adv/routing.c 2010-08-20 19:16:07 UTC (rev 1772)
@@ -569,10 +569,11 @@
"Received BATMAN packet via NB: %pM, IF: %s [%s] "
"(from OG: %pM, via prev OG: %pM, seqno %d, tq %d, "
"TTL %d, V %d, IDF %d)\n",
- ethhdr->h_source, if_incoming->dev, if_incoming->addr_str,
- batman_packet->orig, batman_packet->prev_sender,
- batman_packet->seqno, batman_packet->tq, batman_packet->ttl,
- batman_packet->version, has_directlink_flag);
+ ethhdr->h_source, if_incoming->net_dev->name,
+ if_incoming->addr_str, batman_packet->orig,
+ batman_packet->prev_sender, batman_packet->seqno,
+ batman_packet->tq, batman_packet->ttl, batman_packet->version,
+ has_directlink_flag);
list_for_each_entry_rcu(batman_if, &if_list, list) {
if (batman_if->if_status != IF_ACTIVE)
Modified: trunk/batman-adv/send.c
===================================================================
--- trunk/batman-adv/send.c 2010-08-20 19:16:04 UTC (rev 1771)
+++ trunk/batman-adv/send.c 2010-08-20 19:16:07 UTC (rev 1772)
@@ -71,7 +71,7 @@
if (!(batman_if->net_dev->flags & IFF_UP)) {
pr_warning("Interface %s is not up - can't send packet via "
- "that interface!\n", batman_if->dev);
+ "that interface!\n", batman_if->net_dev->name);
goto send_skb_err;
}
@@ -147,7 +147,7 @@
batman_packet->tq, batman_packet->ttl,
(batman_packet->flags & DIRECTLINK ?
"on" : "off"),
- batman_if->dev, batman_if->addr_str);
+ batman_if->net_dev->name, batman_if->addr_str);
buff_pos += sizeof(struct batman_packet) +
(batman_packet->num_hna * ETH_ALEN);
@@ -192,7 +192,8 @@
"on interface %s [%s]\n",
(forw_packet->own ? "Sending own" : "Forwarding"),
batman_packet->orig, ntohl(batman_packet->seqno),
- batman_packet->ttl, forw_packet->if_incoming->dev,
+ batman_packet->ttl,
+ forw_packet->if_incoming->net_dev->name,
forw_packet->if_incoming->addr_str);
/* skb is only used once and than forw_packet is free'd */
@@ -534,7 +535,7 @@
if (batman_if)
bat_dbg(DBG_BATMAN, bat_priv,
"purge_outstanding_packets(): %s\n",
- batman_if->dev);
+ batman_if->net_dev->name);
else
bat_dbg(DBG_BATMAN, bat_priv,
"purge_outstanding_packets()\n");
Modified: trunk/batman-adv/types.h
===================================================================
--- trunk/batman-adv/types.h 2010-08-20 19:16:04 UTC (rev 1771)
+++ trunk/batman-adv/types.h 2010-08-20 19:16:07 UTC (rev 1772)
@@ -36,7 +36,6 @@
struct batman_if {
struct list_head list;
int16_t if_num;
- char *dev;
char if_status;
char addr_str[ETH_STR_LEN];
struct net_device *net_dev;