diff options
Diffstat (limited to 'net/bridge')
-rw-r--r-- | net/bridge/br.c | 2 | ||||
-rw-r--r-- | net/bridge/br_device.c | 5 | ||||
-rw-r--r-- | net/bridge/br_fdb.c | 9 | ||||
-rw-r--r-- | net/bridge/br_ioctl.c | 2 | ||||
-rw-r--r-- | net/bridge/br_multicast.c | 32 | ||||
-rw-r--r-- | net/bridge/br_netlink.c | 8 | ||||
-rw-r--r-- | net/bridge/br_private.h | 15 | ||||
-rw-r--r-- | net/bridge/br_stp.c | 11 | ||||
-rw-r--r-- | net/bridge/br_stp_if.c | 16 | ||||
-rw-r--r-- | net/bridge/br_stp_timer.c | 24 |
10 files changed, 62 insertions, 62 deletions
diff --git a/net/bridge/br.c b/net/bridge/br.c index e1241c76239a..76357b547752 100644 --- a/net/bridge/br.c +++ b/net/bridge/br.c | |||
@@ -38,7 +38,7 @@ static int __init br_init(void) | |||
38 | 38 | ||
39 | err = stp_proto_register(&br_stp_proto); | 39 | err = stp_proto_register(&br_stp_proto); |
40 | if (err < 0) { | 40 | if (err < 0) { |
41 | printk(KERN_ERR "bridge: can't register sap for STP\n"); | 41 | pr_err("bridge: can't register sap for STP\n"); |
42 | return err; | 42 | return err; |
43 | } | 43 | } |
44 | 44 | ||
diff --git a/net/bridge/br_device.c b/net/bridge/br_device.c index 22b97ba7dc52..eedf2c94820e 100644 --- a/net/bridge/br_device.c +++ b/net/bridge/br_device.c | |||
@@ -263,9 +263,8 @@ void br_netpoll_enable(struct net_bridge *br, | |||
263 | dev->npinfo = br->dev->npinfo; | 263 | dev->npinfo = br->dev->npinfo; |
264 | } else if (!(br->dev->priv_flags & IFF_DISABLE_NETPOLL)) { | 264 | } else if (!(br->dev->priv_flags & IFF_DISABLE_NETPOLL)) { |
265 | br->dev->priv_flags |= IFF_DISABLE_NETPOLL; | 265 | br->dev->priv_flags |= IFF_DISABLE_NETPOLL; |
266 | printk(KERN_INFO "%s:new device %s" | 266 | br_info(br,"new device %s does not support netpoll (disabling)", |
267 | " does not support netpoll (disabling)", | 267 | dev->name); |
268 | br->dev->name, dev->name); | ||
269 | } | 268 | } |
270 | } | 269 | } |
271 | 270 | ||
diff --git a/net/bridge/br_fdb.c b/net/bridge/br_fdb.c index 9101a4e56201..26637439965b 100644 --- a/net/bridge/br_fdb.c +++ b/net/bridge/br_fdb.c | |||
@@ -353,8 +353,7 @@ static int fdb_insert(struct net_bridge *br, struct net_bridge_port *source, | |||
353 | */ | 353 | */ |
354 | if (fdb->is_local) | 354 | if (fdb->is_local) |
355 | return 0; | 355 | return 0; |
356 | 356 | br_warn(br, "adding interface %s with same address " | |
357 | printk(KERN_WARNING "%s adding interface with same address " | ||
358 | "as a received packet\n", | 357 | "as a received packet\n", |
359 | source->dev->name); | 358 | source->dev->name); |
360 | fdb_delete(fdb); | 359 | fdb_delete(fdb); |
@@ -397,9 +396,9 @@ void br_fdb_update(struct net_bridge *br, struct net_bridge_port *source, | |||
397 | /* attempt to update an entry for a local interface */ | 396 | /* attempt to update an entry for a local interface */ |
398 | if (unlikely(fdb->is_local)) { | 397 | if (unlikely(fdb->is_local)) { |
399 | if (net_ratelimit()) | 398 | if (net_ratelimit()) |
400 | printk(KERN_WARNING "%s: received packet with " | 399 | br_warn(br, "received packet on %s with " |
401 | "own address as source address\n", | 400 | "own address as source address\n", |
402 | source->dev->name); | 401 | source->dev->name); |
403 | } else { | 402 | } else { |
404 | /* fastpath: update of existing entry */ | 403 | /* fastpath: update of existing entry */ |
405 | fdb->dst = source; | 404 | fdb->dst = source; |
diff --git a/net/bridge/br_ioctl.c b/net/bridge/br_ioctl.c index 995afc4b04dc..cb43312b846e 100644 --- a/net/bridge/br_ioctl.c +++ b/net/bridge/br_ioctl.c | |||
@@ -412,6 +412,6 @@ int br_dev_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) | |||
412 | 412 | ||
413 | } | 413 | } |
414 | 414 | ||
415 | pr_debug("Bridge does not support ioctl 0x%x\n", cmd); | 415 | br_debug(br, "Bridge does not support ioctl 0x%x\n", cmd); |
416 | return -EOPNOTSUPP; | 416 | return -EOPNOTSUPP; |
417 | } | 417 | } |
diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c index c8419e240316..9d21d98ae5fa 100644 --- a/net/bridge/br_multicast.c +++ b/net/bridge/br_multicast.c | |||
@@ -585,10 +585,9 @@ static struct net_bridge_mdb_entry *br_multicast_get_group( | |||
585 | 585 | ||
586 | if (unlikely(count > br->hash_elasticity && count)) { | 586 | if (unlikely(count > br->hash_elasticity && count)) { |
587 | if (net_ratelimit()) | 587 | if (net_ratelimit()) |
588 | printk(KERN_INFO "%s: Multicast hash table " | 588 | br_info(br, "Multicast hash table " |
589 | "chain limit reached: %s\n", | 589 | "chain limit reached: %s\n", |
590 | br->dev->name, port ? port->dev->name : | 590 | port ? port->dev->name : br->dev->name); |
591 | br->dev->name); | ||
592 | 591 | ||
593 | elasticity = br->hash_elasticity; | 592 | elasticity = br->hash_elasticity; |
594 | } | 593 | } |
@@ -596,11 +595,9 @@ static struct net_bridge_mdb_entry *br_multicast_get_group( | |||
596 | if (mdb->size >= max) { | 595 | if (mdb->size >= max) { |
597 | max *= 2; | 596 | max *= 2; |
598 | if (unlikely(max >= br->hash_max)) { | 597 | if (unlikely(max >= br->hash_max)) { |
599 | printk(KERN_WARNING "%s: Multicast hash table maximum " | 598 | br_warn(br, "Multicast hash table maximum " |
600 | "reached, disabling snooping: %s, %d\n", | 599 | "reached, disabling snooping: %s, %d\n", |
601 | br->dev->name, port ? port->dev->name : | 600 | port ? port->dev->name : br->dev->name, max); |
602 | br->dev->name, | ||
603 | max); | ||
604 | err = -E2BIG; | 601 | err = -E2BIG; |
605 | disable: | 602 | disable: |
606 | br->multicast_disabled = 1; | 603 | br->multicast_disabled = 1; |
@@ -611,22 +608,19 @@ disable: | |||
611 | if (max > mdb->max || elasticity) { | 608 | if (max > mdb->max || elasticity) { |
612 | if (mdb->old) { | 609 | if (mdb->old) { |
613 | if (net_ratelimit()) | 610 | if (net_ratelimit()) |
614 | printk(KERN_INFO "%s: Multicast hash table " | 611 | br_info(br, "Multicast hash table " |
615 | "on fire: %s\n", | 612 | "on fire: %s\n", |
616 | br->dev->name, port ? port->dev->name : | 613 | port ? port->dev->name : br->dev->name); |
617 | br->dev->name); | ||
618 | err = -EEXIST; | 614 | err = -EEXIST; |
619 | goto err; | 615 | goto err; |
620 | } | 616 | } |
621 | 617 | ||
622 | err = br_mdb_rehash(&br->mdb, max, elasticity); | 618 | err = br_mdb_rehash(&br->mdb, max, elasticity); |
623 | if (err) { | 619 | if (err) { |
624 | printk(KERN_WARNING "%s: Cannot rehash multicast " | 620 | br_warn(br, "Cannot rehash multicast " |
625 | "hash table, disabling snooping: " | 621 | "hash table, disabling snooping: %s, %d, %d\n", |
626 | "%s, %d, %d\n", | 622 | port ? port->dev->name : br->dev->name, |
627 | br->dev->name, port ? port->dev->name : | 623 | mdb->size, err); |
628 | br->dev->name, | ||
629 | mdb->size, err); | ||
630 | goto disable; | 624 | goto disable; |
631 | } | 625 | } |
632 | 626 | ||
diff --git a/net/bridge/br_netlink.c b/net/bridge/br_netlink.c index aa56ac2c8829..fe0a79018ab2 100644 --- a/net/bridge/br_netlink.c +++ b/net/bridge/br_netlink.c | |||
@@ -42,8 +42,8 @@ static int br_fill_ifinfo(struct sk_buff *skb, const struct net_bridge_port *por | |||
42 | struct nlmsghdr *nlh; | 42 | struct nlmsghdr *nlh; |
43 | u8 operstate = netif_running(dev) ? dev->operstate : IF_OPER_DOWN; | 43 | u8 operstate = netif_running(dev) ? dev->operstate : IF_OPER_DOWN; |
44 | 44 | ||
45 | pr_debug("br_fill_info event %d port %s master %s\n", | 45 | br_debug(br, "br_fill_info event %d port %s master %s\n", |
46 | event, dev->name, br->dev->name); | 46 | event, dev->name, br->dev->name); |
47 | 47 | ||
48 | nlh = nlmsg_put(skb, pid, seq, event, sizeof(*hdr), flags); | 48 | nlh = nlmsg_put(skb, pid, seq, event, sizeof(*hdr), flags); |
49 | if (nlh == NULL) | 49 | if (nlh == NULL) |
@@ -87,7 +87,9 @@ void br_ifinfo_notify(int event, struct net_bridge_port *port) | |||
87 | struct sk_buff *skb; | 87 | struct sk_buff *skb; |
88 | int err = -ENOBUFS; | 88 | int err = -ENOBUFS; |
89 | 89 | ||
90 | pr_debug("bridge notify event=%d\n", event); | 90 | br_debug(port->br, "port %u(%s) event %d\n", |
91 | (unsigned)port->port_no, port->dev->name, event); | ||
92 | |||
91 | skb = nlmsg_new(br_nlmsg_size(), GFP_ATOMIC); | 93 | skb = nlmsg_new(br_nlmsg_size(), GFP_ATOMIC); |
92 | if (skb == NULL) | 94 | if (skb == NULL) |
93 | goto errout; | 95 | goto errout; |
diff --git a/net/bridge/br_private.h b/net/bridge/br_private.h index 8a072661a744..79a13d1c2573 100644 --- a/net/bridge/br_private.h +++ b/net/bridge/br_private.h | |||
@@ -240,6 +240,21 @@ struct br_input_skb_cb { | |||
240 | # define BR_INPUT_SKB_CB_MROUTERS_ONLY(__skb) (0) | 240 | # define BR_INPUT_SKB_CB_MROUTERS_ONLY(__skb) (0) |
241 | #endif | 241 | #endif |
242 | 242 | ||
243 | #define br_printk(level, br, format, args...) \ | ||
244 | printk(level "%s: " format, (br)->dev->name, ##args) | ||
245 | |||
246 | #define br_err(__br, format, args...) \ | ||
247 | br_printk(KERN_ERR, __br, format, ##args) | ||
248 | #define br_warn(__br, format, args...) \ | ||
249 | br_printk(KERN_WARNING, __br, format, ##args) | ||
250 | #define br_notice(__br, format, args...) \ | ||
251 | br_printk(KERN_NOTICE, __br, format, ##args) | ||
252 | #define br_info(__br, format, args...) \ | ||
253 | br_printk(KERN_INFO, __br, format, ##args) | ||
254 | |||
255 | #define br_debug(br, format, args...) \ | ||
256 | pr_debug("%s: " format, (br)->dev->name, ##args) | ||
257 | |||
243 | extern struct notifier_block br_device_notifier; | 258 | extern struct notifier_block br_device_notifier; |
244 | extern const u8 br_group_address[ETH_ALEN]; | 259 | extern const u8 br_group_address[ETH_ALEN]; |
245 | 260 | ||
diff --git a/net/bridge/br_stp.c b/net/bridge/br_stp.c index edcf14b560f6..57186d84d2bd 100644 --- a/net/bridge/br_stp.c +++ b/net/bridge/br_stp.c | |||
@@ -31,10 +31,9 @@ static const char *const br_port_state_names[] = { | |||
31 | 31 | ||
32 | void br_log_state(const struct net_bridge_port *p) | 32 | void br_log_state(const struct net_bridge_port *p) |
33 | { | 33 | { |
34 | pr_info("%s: port %d(%s) entering %s state\n", | 34 | br_info(p->br, "port %u(%s) entering %s state\n", |
35 | p->br->dev->name, p->port_no, p->dev->name, | 35 | (unsigned) p->port_no, p->dev->name, |
36 | br_port_state_names[p->state]); | 36 | br_port_state_names[p->state]); |
37 | |||
38 | } | 37 | } |
39 | 38 | ||
40 | /* called under bridge lock */ | 39 | /* called under bridge lock */ |
@@ -300,7 +299,7 @@ void br_topology_change_detection(struct net_bridge *br) | |||
300 | if (br->stp_enabled != BR_KERNEL_STP) | 299 | if (br->stp_enabled != BR_KERNEL_STP) |
301 | return; | 300 | return; |
302 | 301 | ||
303 | pr_info("%s: topology change detected, %s\n", br->dev->name, | 302 | br_info(br, "topology change detected, %s\n", |
304 | isroot ? "propagating" : "sending tcn bpdu"); | 303 | isroot ? "propagating" : "sending tcn bpdu"); |
305 | 304 | ||
306 | if (isroot) { | 305 | if (isroot) { |
@@ -469,8 +468,8 @@ void br_received_config_bpdu(struct net_bridge_port *p, struct br_config_bpdu *b | |||
469 | void br_received_tcn_bpdu(struct net_bridge_port *p) | 468 | void br_received_tcn_bpdu(struct net_bridge_port *p) |
470 | { | 469 | { |
471 | if (br_is_designated_port(p)) { | 470 | if (br_is_designated_port(p)) { |
472 | pr_info("%s: received tcn bpdu on port %i(%s)\n", | 471 | br_info(p->br, "port %u(%s) received tcn bpdu\n", |
473 | p->br->dev->name, p->port_no, p->dev->name); | 472 | (unsigned) p->port_no, p->dev->name); |
474 | 473 | ||
475 | br_topology_change_detection(p->br); | 474 | br_topology_change_detection(p->br); |
476 | br_topology_change_acknowledge(p); | 475 | br_topology_change_acknowledge(p); |
diff --git a/net/bridge/br_stp_if.c b/net/bridge/br_stp_if.c index d527119e9f54..1d8826914cbf 100644 --- a/net/bridge/br_stp_if.c +++ b/net/bridge/br_stp_if.c | |||
@@ -85,17 +85,16 @@ void br_stp_enable_port(struct net_bridge_port *p) | |||
85 | { | 85 | { |
86 | br_init_port(p); | 86 | br_init_port(p); |
87 | br_port_state_selection(p->br); | 87 | br_port_state_selection(p->br); |
88 | br_log_state(p); | ||
88 | } | 89 | } |
89 | 90 | ||
90 | /* called under bridge lock */ | 91 | /* called under bridge lock */ |
91 | void br_stp_disable_port(struct net_bridge_port *p) | 92 | void br_stp_disable_port(struct net_bridge_port *p) |
92 | { | 93 | { |
93 | struct net_bridge *br; | 94 | struct net_bridge *br = p->br; |
94 | int wasroot; | 95 | int wasroot; |
95 | 96 | ||
96 | br = p->br; | 97 | br_log_state(p); |
97 | printk(KERN_INFO "%s: port %i(%s) entering %s state\n", | ||
98 | br->dev->name, p->port_no, p->dev->name, "disabled"); | ||
99 | 98 | ||
100 | wasroot = br_is_root_bridge(br); | 99 | wasroot = br_is_root_bridge(br); |
101 | br_become_designated_port(p); | 100 | br_become_designated_port(p); |
@@ -127,11 +126,10 @@ static void br_stp_start(struct net_bridge *br) | |||
127 | r = call_usermodehelper(BR_STP_PROG, argv, envp, UMH_WAIT_PROC); | 126 | r = call_usermodehelper(BR_STP_PROG, argv, envp, UMH_WAIT_PROC); |
128 | if (r == 0) { | 127 | if (r == 0) { |
129 | br->stp_enabled = BR_USER_STP; | 128 | br->stp_enabled = BR_USER_STP; |
130 | printk(KERN_INFO "%s: userspace STP started\n", br->dev->name); | 129 | br_debug(br, "userspace STP started\n"); |
131 | } else { | 130 | } else { |
132 | br->stp_enabled = BR_KERNEL_STP; | 131 | br->stp_enabled = BR_KERNEL_STP; |
133 | printk(KERN_INFO "%s: starting userspace STP failed, " | 132 | br_debug(br, "using kernel STP\n"); |
134 | "starting kernel STP\n", br->dev->name); | ||
135 | 133 | ||
136 | /* To start timers on any ports left in blocking */ | 134 | /* To start timers on any ports left in blocking */ |
137 | spin_lock_bh(&br->lock); | 135 | spin_lock_bh(&br->lock); |
@@ -148,9 +146,7 @@ static void br_stp_stop(struct net_bridge *br) | |||
148 | 146 | ||
149 | if (br->stp_enabled == BR_USER_STP) { | 147 | if (br->stp_enabled == BR_USER_STP) { |
150 | r = call_usermodehelper(BR_STP_PROG, argv, envp, 1); | 148 | r = call_usermodehelper(BR_STP_PROG, argv, envp, 1); |
151 | printk(KERN_INFO "%s: userspace STP stopped, return code %d\n", | 149 | br_info(br, "userspace STP stopped, return code %d\n", r); |
152 | br->dev->name, r); | ||
153 | |||
154 | 150 | ||
155 | /* To start timers on any ports left in blocking */ | 151 | /* To start timers on any ports left in blocking */ |
156 | spin_lock_bh(&br->lock); | 152 | spin_lock_bh(&br->lock); |
diff --git a/net/bridge/br_stp_timer.c b/net/bridge/br_stp_timer.c index 772a140bfdf0..7b22456023c5 100644 --- a/net/bridge/br_stp_timer.c +++ b/net/bridge/br_stp_timer.c | |||
@@ -35,7 +35,7 @@ static void br_hello_timer_expired(unsigned long arg) | |||
35 | { | 35 | { |
36 | struct net_bridge *br = (struct net_bridge *)arg; | 36 | struct net_bridge *br = (struct net_bridge *)arg; |
37 | 37 | ||
38 | pr_debug("%s: hello timer expired\n", br->dev->name); | 38 | br_debug(br, "hello timer expired\n"); |
39 | spin_lock(&br->lock); | 39 | spin_lock(&br->lock); |
40 | if (br->dev->flags & IFF_UP) { | 40 | if (br->dev->flags & IFF_UP) { |
41 | br_config_bpdu_generation(br); | 41 | br_config_bpdu_generation(br); |
@@ -55,13 +55,9 @@ static void br_message_age_timer_expired(unsigned long arg) | |||
55 | if (p->state == BR_STATE_DISABLED) | 55 | if (p->state == BR_STATE_DISABLED) |
56 | return; | 56 | return; |
57 | 57 | ||
58 | 58 | br_info(br, "port %u(%s) neighbor %.2x%.2x.%pM lost\n", | |
59 | pr_info("%s: neighbor %.2x%.2x.%.2x:%.2x:%.2x:%.2x:%.2x:%.2x lost on port %d(%s)\n", | 59 | (unsigned) p->port_no, p->dev->name, |
60 | br->dev->name, | 60 | id->prio[0], id->prio[1], &id->addr); |
61 | id->prio[0], id->prio[1], | ||
62 | id->addr[0], id->addr[1], id->addr[2], | ||
63 | id->addr[3], id->addr[4], id->addr[5], | ||
64 | p->port_no, p->dev->name); | ||
65 | 61 | ||
66 | /* | 62 | /* |
67 | * According to the spec, the message age timer cannot be | 63 | * According to the spec, the message age timer cannot be |
@@ -87,8 +83,8 @@ static void br_forward_delay_timer_expired(unsigned long arg) | |||
87 | struct net_bridge_port *p = (struct net_bridge_port *) arg; | 83 | struct net_bridge_port *p = (struct net_bridge_port *) arg; |
88 | struct net_bridge *br = p->br; | 84 | struct net_bridge *br = p->br; |
89 | 85 | ||
90 | pr_debug("%s: %d(%s) forward delay timer\n", | 86 | br_debug(br, "port %u(%s) forward delay timer\n", |
91 | br->dev->name, p->port_no, p->dev->name); | 87 | (unsigned) p->port_no, p->dev->name); |
92 | spin_lock(&br->lock); | 88 | spin_lock(&br->lock); |
93 | if (p->state == BR_STATE_LISTENING) { | 89 | if (p->state == BR_STATE_LISTENING) { |
94 | p->state = BR_STATE_LEARNING; | 90 | p->state = BR_STATE_LEARNING; |
@@ -107,7 +103,7 @@ static void br_tcn_timer_expired(unsigned long arg) | |||
107 | { | 103 | { |
108 | struct net_bridge *br = (struct net_bridge *) arg; | 104 | struct net_bridge *br = (struct net_bridge *) arg; |
109 | 105 | ||
110 | pr_debug("%s: tcn timer expired\n", br->dev->name); | 106 | br_debug(br, "tcn timer expired\n"); |
111 | spin_lock(&br->lock); | 107 | spin_lock(&br->lock); |
112 | if (br->dev->flags & IFF_UP) { | 108 | if (br->dev->flags & IFF_UP) { |
113 | br_transmit_tcn(br); | 109 | br_transmit_tcn(br); |
@@ -121,7 +117,7 @@ static void br_topology_change_timer_expired(unsigned long arg) | |||
121 | { | 117 | { |
122 | struct net_bridge *br = (struct net_bridge *) arg; | 118 | struct net_bridge *br = (struct net_bridge *) arg; |
123 | 119 | ||
124 | pr_debug("%s: topo change timer expired\n", br->dev->name); | 120 | br_debug(br, "topo change timer expired\n"); |
125 | spin_lock(&br->lock); | 121 | spin_lock(&br->lock); |
126 | br->topology_change_detected = 0; | 122 | br->topology_change_detected = 0; |
127 | br->topology_change = 0; | 123 | br->topology_change = 0; |
@@ -132,8 +128,8 @@ static void br_hold_timer_expired(unsigned long arg) | |||
132 | { | 128 | { |
133 | struct net_bridge_port *p = (struct net_bridge_port *) arg; | 129 | struct net_bridge_port *p = (struct net_bridge_port *) arg; |
134 | 130 | ||
135 | pr_debug("%s: %d(%s) hold timer expired\n", | 131 | br_debug(p->br, "port %u(%s) hold timer expired\n", |
136 | p->br->dev->name, p->port_no, p->dev->name); | 132 | (unsigned) p->port_no, p->dev->name); |
137 | 133 | ||
138 | spin_lock(&p->br->lock); | 134 | spin_lock(&p->br->lock); |
139 | if (p->config_pending) | 135 | if (p->config_pending) |