[PATCH] bonding: add bond name to all error messages
Mitch Williams [Wed, 9 Nov 2005 18:34:57 +0000 (10:34 -0800)]
Add the bond name to all error messages so we can tell which one is
complaining.  Also reformats some error messages to be more consistent.

Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Acked-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

drivers/net/bonding/bond_3ad.c
drivers/net/bonding/bond_alb.c
drivers/net/bonding/bond_main.c

index d2f34d5..0470523 100644 (file)
@@ -1198,10 +1198,10 @@ static void ad_rx_machine(struct lacpdu *lacpdu, struct port *port)
                        // detect loopback situation
                        if (!MAC_ADDRESS_COMPARE(&(lacpdu->actor_system), &(port->actor_system))) {
                                // INFO_RECEIVED_LOOPBACK_FRAMES
-                               printk(KERN_ERR DRV_NAME ": An illegal loopback occurred on adapter (%s)\n",
-                                               port->slave->dev->name);
-                               printk(KERN_ERR "Check the configuration to verify that all Adapters "
-                                               "are connected to 802.3ad compliant switch ports\n");
+                               printk(KERN_ERR DRV_NAME ": %s: An illegal loopback occurred on "
+                                      "adapter (%s). Check the configuration to verify that all "
+                                      "Adapters are connected to 802.3ad compliant switch ports\n",
+                                      port->slave->dev->master->name, port->slave->dev->name);
                                __release_rx_machine_lock(port);
                                return;
                        }
@@ -1378,8 +1378,9 @@ static void ad_port_selection_logic(struct port *port)
                        }
                }
                if (!curr_port) { // meaning: the port was related to an aggregator but was not on the aggregator port list
-                       printk(KERN_WARNING DRV_NAME ": Warning: Port %d (on %s) was "
+                       printk(KERN_WARNING DRV_NAME ": %s: Warning: Port %d (on %s) was "
                               "related to aggregator %d but was not on its port list\n",
+                              port->slave->dev->master->name,
                               port->actor_port_number, port->slave->dev->name,
                               port->aggregator->aggregator_identifier);
                }
@@ -1450,7 +1451,8 @@ static void ad_port_selection_logic(struct port *port)
 
                        dprintk("Port %d joined LAG %d(new LAG)\n", port->actor_port_number, port->aggregator->aggregator_identifier);
                } else {
-                       printk(KERN_ERR DRV_NAME ": Port %d (on %s) did not find a suitable aggregator\n",
+                       printk(KERN_ERR DRV_NAME ": %s: Port %d (on %s) did not find a suitable aggregator\n",
+                              port->slave->dev->master->name,
                               port->actor_port_number, port->slave->dev->name);
                }
        }
@@ -1582,8 +1584,9 @@ static void ad_agg_selection_logic(struct aggregator *aggregator)
 
                // check if any partner replys
                if (best_aggregator->is_individual) {
-                       printk(KERN_WARNING DRV_NAME ": Warning: No 802.3ad response from the link partner "
-                                       "for any adapters in the bond\n");
+                       printk(KERN_WARNING DRV_NAME ": %s: Warning: No 802.3ad response from "
+                              "the link partner for any adapters in the bond\n",
+                              best_aggregator->slave->dev->master->name);
                }
 
                // check if there are more than one aggregator
@@ -1915,7 +1918,8 @@ int bond_3ad_bind_slave(struct slave *slave)
        struct aggregator *aggregator;
 
        if (bond == NULL) {
-               printk(KERN_ERR "The slave %s is not attached to its bond\n", slave->dev->name);
+               printk(KERN_ERR DRV_NAME ": %s: The slave %s is not attached to its bond\n",
+                      slave->dev->master->name, slave->dev->name);
                return -1;
        }
 
@@ -1990,7 +1994,9 @@ void bond_3ad_unbind_slave(struct slave *slave)
 
        // if slave is null, the whole port is not initialized
        if (!port->slave) {
-               printk(KERN_WARNING DRV_NAME ": Trying to unbind an uninitialized port on %s\n", slave->dev->name);
+               printk(KERN_WARNING DRV_NAME ": Warning: %s: Trying to "
+                      "unbind an uninitialized port on %s\n",
+                      slave->dev->master->name, slave->dev->name);
                return;
        }
 
@@ -2021,7 +2027,8 @@ void bond_3ad_unbind_slave(struct slave *slave)
                                dprintk("Some port(s) related to LAG %d - replaceing with LAG %d\n", aggregator->aggregator_identifier, new_aggregator->aggregator_identifier);
 
                                if ((new_aggregator->lag_ports == port) && new_aggregator->is_active) {
-                                       printk(KERN_INFO DRV_NAME ": Removing an active aggregator\n");
+                                       printk(KERN_INFO DRV_NAME ": %s: Removing an active aggregator\n",
+                                              aggregator->slave->dev->master->name);
                                        // select new active aggregator
                                         select_new_active_agg = 1;
                                }
@@ -2051,15 +2058,17 @@ void bond_3ad_unbind_slave(struct slave *slave)
                                        ad_agg_selection_logic(__get_first_agg(port));
                                }
                        } else {
-                               printk(KERN_WARNING DRV_NAME ": Warning: unbinding aggregator, "
-                                      "and could not find a new aggregator for its ports\n");
+                               printk(KERN_WARNING DRV_NAME ": %s: Warning: unbinding aggregator, "
+                                      "and could not find a new aggregator for its ports\n",
+                                      slave->dev->master->name);
                        }
                } else { // in case that the only port related to this aggregator is the one we want to remove
                        select_new_active_agg = aggregator->is_active;
                        // clear the aggregator
                        ad_clear_agg(aggregator);
                        if (select_new_active_agg) {
-                               printk(KERN_INFO "Removing an active aggregator\n");
+                               printk(KERN_INFO DRV_NAME ": %s: Removing an active aggregator\n",
+                                      slave->dev->master->name);
                                // select new active aggregator
                                ad_agg_selection_logic(__get_first_agg(port));
                        }
@@ -2085,7 +2094,8 @@ void bond_3ad_unbind_slave(struct slave *slave)
                                        // clear the aggregator
                                        ad_clear_agg(temp_aggregator);
                                        if (select_new_active_agg) {
-                                               printk(KERN_INFO "Removing an active aggregator\n");
+                                               printk(KERN_INFO DRV_NAME ": %s: Removing an active aggregator\n",
+                                                      slave->dev->master->name);
                                                // select new active aggregator
                                                ad_agg_selection_logic(__get_first_agg(port));
                                        }
@@ -2131,7 +2141,8 @@ void bond_3ad_state_machine_handler(struct bonding *bond)
                // select the active aggregator for the bond
                if ((port = __get_first_port(bond))) {
                        if (!port->slave) {
-                               printk(KERN_WARNING DRV_NAME ": Warning: bond's first port is uninitialized\n");
+                               printk(KERN_WARNING DRV_NAME ": %s: Warning: bond's first port is "
+                                      "uninitialized\n", bond->dev->name);
                                goto re_arm;
                        }
 
@@ -2143,7 +2154,8 @@ void bond_3ad_state_machine_handler(struct bonding *bond)
        // for each port run the state machines
        for (port = __get_first_port(bond); port; port = __get_next_port(port)) {
                if (!port->slave) {
-                       printk(KERN_WARNING DRV_NAME ": Warning: Found an uninitialized port\n");
+                       printk(KERN_WARNING DRV_NAME ": %s: Warning: Found an uninitialized "
+                              "port\n", bond->dev->name);
                        goto re_arm;
                }
 
@@ -2184,7 +2196,8 @@ static void bond_3ad_rx_indication(struct lacpdu *lacpdu, struct slave *slave, u
                port = &(SLAVE_AD_INFO(slave).port);
 
                if (!port->slave) {
-                       printk(KERN_WARNING DRV_NAME ": Warning: port of slave %s is uninitialized\n", slave->dev->name);
+                       printk(KERN_WARNING DRV_NAME ": %s: Warning: port of slave %s is "
+                              "uninitialized\n", slave->dev->name, slave->dev->master->name);
                        return;
                }
 
@@ -2230,8 +2243,9 @@ void bond_3ad_adapter_speed_changed(struct slave *slave)
 
        // if slave is null, the whole port is not initialized
        if (!port->slave) {
-               printk(KERN_WARNING DRV_NAME ": Warning: speed changed for uninitialized port on %s\n",
-                      slave->dev->name);
+               printk(KERN_WARNING DRV_NAME ": Warning: %s: speed "
+                      "changed for uninitialized port on %s\n",
+                      slave->dev->master->name, slave->dev->name);
                return;
        }
 
@@ -2257,8 +2271,9 @@ void bond_3ad_adapter_duplex_changed(struct slave *slave)
 
        // if slave is null, the whole port is not initialized
        if (!port->slave) {
-               printk(KERN_WARNING DRV_NAME ": Warning: duplex changed for uninitialized port on %s\n",
-                      slave->dev->name);
+               printk(KERN_WARNING DRV_NAME ": %s: Warning: duplex changed "
+                      "for uninitialized port on %s\n",
+                      slave->dev->master->name, slave->dev->name);
                return;
        }
 
@@ -2285,8 +2300,9 @@ void bond_3ad_handle_link_change(struct slave *slave, char link)
 
        // if slave is null, the whole port is not initialized
        if (!port->slave) {
-               printk(KERN_WARNING DRV_NAME ": Warning: link status changed for uninitialized port on %s\n",
-                       slave->dev->name);
+               printk(KERN_WARNING DRV_NAME ": Warning: %s: link status changed for "
+                      "uninitialized port on %s\n",
+                       slave->dev->master->name, slave->dev->name);
                return;
        }
 
@@ -2363,7 +2379,8 @@ int bond_3ad_xmit_xor(struct sk_buff *skb, struct net_device *dev)
        }
 
        if (bond_3ad_get_active_agg_info(bond, &ad_info)) {
-               printk(KERN_DEBUG "ERROR: bond_3ad_get_active_agg_info failed\n");
+               printk(KERN_DEBUG DRV_NAME ": %s: Error: "
+                      "bond_3ad_get_active_agg_info failed\n", dev->name);
                goto out;
        }
 
@@ -2372,7 +2389,9 @@ int bond_3ad_xmit_xor(struct sk_buff *skb, struct net_device *dev)
 
        if (slaves_in_agg == 0) {
                /*the aggregator is empty*/
-               printk(KERN_DEBUG "ERROR: active aggregator is empty\n");
+               printk(KERN_DEBUG DRV_NAME ": %s: Error: active "
+                      "aggregator is empty\n",
+                      dev->name);
                goto out;
        }
 
@@ -2390,7 +2409,8 @@ int bond_3ad_xmit_xor(struct sk_buff *skb, struct net_device *dev)
        }
 
        if (slave_agg_no >= 0) {
-               printk(KERN_ERR DRV_NAME ": Error: Couldn't find a slave to tx on for aggregator ID %d\n", agg_id);
+               printk(KERN_ERR DRV_NAME ": %s: Error: Couldn't find a slave to tx on "
+                      "for aggregator ID %d\n", dev->name, agg_id);
                goto out;
        }
 
index f8fce39..96dfb90 100644 (file)
@@ -207,7 +207,7 @@ static int tlb_initialize(struct bonding *bond)
        bond_info->tx_hashtbl = kmalloc(size, GFP_KERNEL);
        if (!bond_info->tx_hashtbl) {
                printk(KERN_ERR DRV_NAME
-                      ": Error: %s: Failed to allocate TLB hash table\n",
+                      ": %s: Error: Failed to allocate TLB hash table\n",
                       bond->dev->name);
                _unlock_tx_hashtbl(bond);
                return -1;
@@ -513,7 +513,8 @@ static void rlb_update_client(struct rlb_client_info *client_info)
                                 client_info->mac_dst);
                if (!skb) {
                        printk(KERN_ERR DRV_NAME
-                              ": Error: failed to create an ARP packet\n");
+                              ": %s: Error: failed to create an ARP packet\n",
+                              client_info->slave->dev->master->name);
                        continue;
                }
 
@@ -523,7 +524,8 @@ static void rlb_update_client(struct rlb_client_info *client_info)
                        skb = vlan_put_tag(skb, client_info->vlan_id);
                        if (!skb) {
                                printk(KERN_ERR DRV_NAME
-                                      ": Error: failed to insert VLAN tag\n");
+                                      ": %s: Error: failed to insert VLAN tag\n",
+                                      client_info->slave->dev->master->name);
                                continue;
                        }
                }
@@ -606,8 +608,9 @@ static void rlb_req_update_subnet_clients(struct bonding *bond, u32 src_ip)
 
                if (!client_info->slave) {
                        printk(KERN_ERR DRV_NAME
-                              ": Error: found a client with no channel in "
-                              "the client's hash table\n");
+                              ": %s: Error: found a client with no channel in "
+                              "the client's hash table\n",
+                              bond->dev->name);
                        continue;
                }
                /*update all clients using this src_ip, that are not assigned
@@ -807,7 +810,7 @@ static int rlb_initialize(struct bonding *bond)
        bond_info->rx_hashtbl = kmalloc(size, GFP_KERNEL);
        if (!bond_info->rx_hashtbl) {
                printk(KERN_ERR DRV_NAME
-                      ": Error: %s: Failed to allocate RLB hash table\n",
+                      ": %s: Error: Failed to allocate RLB hash table\n",
                       bond->dev->name);
                _unlock_rx_hashtbl(bond);
                return -1;
@@ -927,7 +930,8 @@ static void alb_send_learning_packets(struct slave *slave, u8 mac_addr[])
                        skb = vlan_put_tag(skb, vlan->vlan_id);
                        if (!skb) {
                                printk(KERN_ERR DRV_NAME
-                                      ": Error: failed to insert VLAN tag\n");
+                                      ": %s: Error: failed to insert VLAN tag\n",
+                                      bond->dev->name);
                                continue;
                        }
                }
@@ -956,11 +960,11 @@ static int alb_set_slave_mac_addr(struct slave *slave, u8 addr[], int hw)
        s_addr.sa_family = dev->type;
        if (dev_set_mac_address(dev, &s_addr)) {
                printk(KERN_ERR DRV_NAME
-                      ": Error: dev_set_mac_address of dev %s failed! ALB "
+                      ": %s: Error: dev_set_mac_address of dev %s failed! ALB "
                       "mode requires that the base driver support setting "
                       "the hw address also when the network device's "
                       "interface is open\n",
-                      dev->name);
+                      dev->master->name, dev->name);
                return -EOPNOTSUPP;
        }
        return 0;
@@ -1153,16 +1157,16 @@ static int alb_handle_addr_collision_on_attach(struct bonding *bond, struct slav
                                       bond->alb_info.rlb_enabled);
 
                printk(KERN_WARNING DRV_NAME
-                      ": Warning: the hw address of slave %s is in use by "
+                      ": %s: Warning: the hw address of slave %s is in use by "
                       "the bond; giving it the hw address of %s\n",
-                      slave->dev->name, free_mac_slave->dev->name);
+                      bond->dev->name, slave->dev->name, free_mac_slave->dev->name);
 
        } else if (has_bond_addr) {
                printk(KERN_ERR DRV_NAME
-                      ": Error: the hw address of slave %s is in use by the "
+                      ": %s: Error: the hw address of slave %s is in use by the "
                       "bond; couldn't find a slave with a free hw address to "
                       "give it (this should not have happened)\n",
-                      slave->dev->name);
+                      bond->dev->name, slave->dev->name);
                return -EFAULT;
        }
 
index 94cec3c..7838522 100644 (file)
@@ -910,7 +910,7 @@ static void bond_vlan_rx_add_vid(struct net_device *bond_dev, uint16_t vid)
        res = bond_add_vlan(bond, vid);
        if (res) {
                printk(KERN_ERR DRV_NAME
-                      ": %s: Failed to add vlan id %d\n",
+                      ": %s: Error: Failed to add vlan id %d\n",
                       bond_dev->name, vid);
        }
 }
@@ -944,7 +944,7 @@ static void bond_vlan_rx_kill_vid(struct net_device *bond_dev, uint16_t vid)
        res = bond_del_vlan(bond, vid);
        if (res) {
                printk(KERN_ERR DRV_NAME
-                      ": %s: Failed to remove vlan id %d\n",
+                      ": %s: Error: Failed to remove vlan id %d\n",
                       bond_dev->name, vid);
        }
 }
@@ -1644,8 +1644,8 @@ static int bond_enslave(struct net_device *bond_dev, struct net_device *slave_de
        if (!bond->params.use_carrier && slave_dev->ethtool_ops == NULL &&
                slave_dev->do_ioctl == NULL) {
                printk(KERN_WARNING DRV_NAME
-                      ": Warning : no link monitoring support for %s\n",
-                      slave_dev->name);
+                      ": %s: Warning: no link monitoring support for %s\n",
+                      bond_dev->name, slave_dev->name);
        }
 
        /* bond must be initialized by bond_open() before enslaving */
@@ -1666,17 +1666,17 @@ static int bond_enslave(struct net_device *bond_dev, struct net_device *slave_de
                dprintk("%s: NETIF_F_VLAN_CHALLENGED\n", slave_dev->name);
                if (!list_empty(&bond->vlan_list)) {
                        printk(KERN_ERR DRV_NAME
-                              ": Error: cannot enslave VLAN "
+                              ": %s: Error: cannot enslave VLAN "
                               "challenged slave %s on VLAN enabled "
-                              "bond %s\n", slave_dev->name,
+                              "bond %s\n", bond_dev->name, slave_dev->name,
                               bond_dev->name);
                        return -EPERM;
                } else {
                        printk(KERN_WARNING DRV_NAME
-                              ": Warning: enslaved VLAN challenged "
+                              ": %s: Warning: enslaved VLAN challenged "
                               "slave %s. Adding VLANs will be blocked as "
                               "long as %s is part of bond %s\n",
-                              slave_dev->name, slave_dev->name,
+                              bond_dev->name, slave_dev->name, slave_dev->name,
                               bond_dev->name);
                        bond_dev->features |= NETIF_F_VLAN_CHALLENGED;
                }
@@ -1706,12 +1706,11 @@ static int bond_enslave(struct net_device *bond_dev, struct net_device *slave_de
 
        if (slave_dev->set_mac_address == NULL) {
                printk(KERN_ERR DRV_NAME
-                      ": Error: The slave device you specified does "
-                      "not support setting the MAC address.\n");
-               printk(KERN_ERR
-                      "Your kernel likely does not support slave devices.\n");
-
-               res = -EOPNOTSUPP;
+                       ": %s: Error: The slave device you specified does "
+                       "not support setting the MAC address. "
+                       "Your kernel likely does not support slave "
+                       "devices.\n", bond_dev->name);
+               res = -EOPNOTSUPP;
                goto err_undo_flags;
        }
 
@@ -1827,21 +1826,21 @@ static int bond_enslave(struct net_device *bond_dev, struct net_device *slave_de
                         * the messages for netif_carrier.
                         */
                        printk(KERN_WARNING DRV_NAME
-                              ": Warning: MII and ETHTOOL support not "
+                              ": %s: Warning: MII and ETHTOOL support not "
                               "available for interface %s, and "
                               "arp_interval/arp_ip_target module parameters "
                               "not specified, thus bonding will not detect "
                               "link failures! see bonding.txt for details.\n",
-                              slave_dev->name);
+                              bond_dev->name, slave_dev->name);
                } else if (link_reporting == -1) {
                        /* unable get link status using mii/ethtool */
                        printk(KERN_WARNING DRV_NAME
-                              ": Warning: can't get link status from "
+                              ": %s: Warning: can't get link status from "
                               "interface %s; the network driver associated "
                               "with this interface does not support MII or "
                               "ETHTOOL link status reporting, thus miimon "
                               "has no effect on this interface.\n",
-                              slave_dev->name);
+                              bond_dev->name, slave_dev->name);
                }
        }
 
@@ -1868,15 +1867,15 @@ static int bond_enslave(struct net_device *bond_dev, struct net_device *slave_de
        if (bond_update_speed_duplex(new_slave) &&
            (new_slave->link != BOND_LINK_DOWN)) {
                printk(KERN_WARNING DRV_NAME
-                      ": Warning: failed to get speed and duplex from %s, "
+                      ": %s: Warning: failed to get speed and duplex from %s, "
                       "assumed to be 100Mb/sec and Full.\n",
-                      new_slave->dev->name);
+                      bond_dev->name, new_slave->dev->name);
 
                if (bond->params.mode == BOND_MODE_8023AD) {
-                       printk(KERN_WARNING
-                              "Operation of 802.3ad mode requires ETHTOOL "
+                       printk(KERN_WARNING DRV_NAME
+                              ": %s: Warning: Operation of 802.3ad mode requires ETHTOOL "
                               "support in base driver for proper aggregator "
-                              "selection.\n");
+                              "selection.\n", bond_dev->name);
                }
        }
 
@@ -2010,7 +2009,7 @@ static int bond_release(struct net_device *bond_dev, struct net_device *slave_de
        if (!(slave_dev->flags & IFF_SLAVE) ||
            (slave_dev->master != bond_dev)) {
                printk(KERN_ERR DRV_NAME
-                      ": Error: %s: cannot release %s.\n",
+                      ": %s: Error: cannot release %s.\n",
                       bond_dev->name, slave_dev->name);
                return -EINVAL;
        }
@@ -2031,11 +2030,12 @@ static int bond_release(struct net_device *bond_dev, struct net_device *slave_de
                                 ETH_ALEN);
        if (!mac_addr_differ && (bond->slave_cnt > 1)) {
                printk(KERN_WARNING DRV_NAME
-                      ": Warning: the permanent HWaddr of %s "
+                      ": %s: Warning: the permanent HWaddr of %s "
                       "- %02X:%02X:%02X:%02X:%02X:%02X - is "
                       "still in use by %s. Set the HWaddr of "
                       "%s to a different address to avoid "
                       "conflicts.\n",
+                      bond_dev->name,
                       slave_dev->name,
                       slave->perm_hwaddr[0],
                       slave->perm_hwaddr[1],
@@ -2111,19 +2111,20 @@ static int bond_release(struct net_device *bond_dev, struct net_device *slave_de
                        bond_dev->features |= NETIF_F_VLAN_CHALLENGED;
                } else {
                        printk(KERN_WARNING DRV_NAME
-                              ": Warning: clearing HW address of %s while it "
+                              ": %s: Warning: clearing HW address of %s while it "
                               "still has VLANs.\n",
-                              bond_dev->name);
+                              bond_dev->name, bond_dev->name);
                        printk(KERN_WARNING DRV_NAME
-                              ": When re-adding slaves, make sure the bond's "
-                              "HW address matches its VLANs'.\n");
+                              ": %s: When re-adding slaves, make sure the bond's "
+                              "HW address matches its VLANs'.\n",
+                              bond_dev->name);
                }
        } else if ((bond_dev->features & NETIF_F_VLAN_CHALLENGED) &&
                   !bond_has_challenged_slaves(bond)) {
                printk(KERN_INFO DRV_NAME
-                      ": last VLAN challenged slave %s "
+                      ": %s: last VLAN challenged slave %s "
                       "left bond %s. VLAN blocking is removed\n",
-                      slave_dev->name, bond_dev->name);
+                      bond_dev->name, slave_dev->name, bond_dev->name);
                bond_dev->features &= ~NETIF_F_VLAN_CHALLENGED;
        }
 
@@ -2274,12 +2275,13 @@ static int bond_release_all(struct net_device *bond_dev)
                bond_dev->features |= NETIF_F_VLAN_CHALLENGED;
        } else {
                printk(KERN_WARNING DRV_NAME
-                      ": Warning: clearing HW address of %s while it "
+                      ": %s: Warning: clearing HW address of %s while it "
                       "still has VLANs.\n",
-                      bond_dev->name);
+                      bond_dev->name, bond_dev->name);
                printk(KERN_WARNING DRV_NAME
-                      ": When re-adding slaves, make sure the bond's "
-                      "HW address matches its VLANs'.\n");
+                      ": %s: When re-adding slaves, make sure the bond's "
+                      "HW address matches its VLANs'.\n",
+                      bond_dev->name);
        }
 
        printk(KERN_INFO DRV_NAME
@@ -2596,8 +2598,11 @@ static void bond_mii_monitor(struct net_device *bond_dev)
                        break;
                default:
                        /* Should not happen */
-                       printk(KERN_ERR "bonding: Error: %s  Illegal value (link=%d)\n",
-                              slave->dev->name, slave->link);
+                       printk(KERN_ERR DRV_NAME
+                              ": %s: Error: %s Illegal value (link=%d)\n",
+                              bond_dev->name,
+                              slave->dev->name,
+                              slave->link);
                        goto out;
                } /* end of switch (slave->link) */
 
@@ -4397,8 +4402,9 @@ static int bond_xmit_broadcast(struct sk_buff *skb, struct net_device *bond_dev)
                                struct sk_buff *skb2 = skb_clone(skb, GFP_ATOMIC);
                                if (!skb2) {
                                        printk(KERN_ERR DRV_NAME
-                                              ": Error: bond_xmit_broadcast(): "
-                                              "skb_clone() failed\n");
+                                              ": %s: Error: bond_xmit_broadcast(): "
+                                              "skb_clone() failed\n",
+                                              bond_dev->name);
                                        continue;
                                }
 
@@ -4467,7 +4473,8 @@ static inline void bond_set_mode_ops(struct bonding *bond, int mode)
        default:
                /* Should never happen, mode already checked */
                printk(KERN_ERR DRV_NAME
-                      ": Error: Unknown bonding mode %d\n",
+                      ": %s: Error: Unknown bonding mode %d\n",
+                      bond_dev->name,
                       mode);
                break;
        }
@@ -4670,7 +4677,7 @@ static int bond_check_params(struct bond_params *params)
        if (max_bonds < 1 || max_bonds > INT_MAX) {
                printk(KERN_WARNING DRV_NAME
                       ": Warning: max_bonds (%d) not in range %d-%d, so it "
-                      "was reset to BOND_DEFAULT_MAX_BONDS (%d)",
+                      "was reset to BOND_DEFAULT_MAX_BONDS (%d)\n",
                       max_bonds, 1, INT_MAX, BOND_DEFAULT_MAX_BONDS);
                max_bonds = BOND_DEFAULT_MAX_BONDS;
        }