Signed-off-by: Or Gerlitz <[EMAIL PROTECTED]>

Index: net-2.6.19/drivers/net/bonding/bond_main.c
===================================================================
--- net-2.6.19.orig/drivers/net/bonding/bond_main.c     2006-09-25 
11:46:35.000000000 +0300
+++ net-2.6.19/drivers/net/bonding/bond_main.c  2006-09-26 10:54:44.000000000 
+0300
@@ -128,6 +128,12 @@ MODULE_PARM_DESC(arp_interval, "arp inte
 module_param_array(arp_ip_target, charp, NULL, 0);
 MODULE_PARM_DESC(arp_ip_target, "arp targets in n.n.n.n form");

+static int bonding_dev_type    = ARPHRD_ETHER;
+static int bonding_dev_addrlen = ETH_ALEN;
+
+module_param(bonding_dev_type,    int, 0644);
+module_param(bonding_dev_addrlen, int, 0644);
+
 /*----------------------------- Global variables ----------------------------*/

 static const char * const version =
@@ -4606,7 +4612,14 @@ int bond_create(char *name, struct bond_
                res = -ENOMEM;
                goto out_rtnl;
        }
-
+
+       /* XXX set the bond dev type and addr len such that the net core code
+       * (eg arp_mc_map() in net/ipv4/arp.c) would correctly process multicast
+       * groups set ***before*** the first enslaveness
+       */
+       bond_dev->type     = bonding_dev_type;
+       bond_dev->addr_len = bonding_dev_addrlen;
+
        /* bond_init() must be called after dev_alloc_name() (for the
         * /proc files), but before register_netdevice(), because we
         * need to set function pointers.

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to