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); 
int bond_3ad_bind_slave(struct slave *slave){	struct bonding *bond = bond_get_bond_by_slave(slave);	struct port *port;	struct aggregator *aggregator;	if (bond == NULL) {		printk(KERN_ERR "The slave %s is not attached to its bond\n", slave->dev->name);		return -1;	}	//check that the slave has not been intialized yet.	if (SLAVE_AD_INFO(slave).port.slave != slave) {		// port initialization		port = &(SLAVE_AD_INFO(slave).port);		ad_initialize_port(port, BOND_AD_INFO(bond).lacp_fast);		port->slave = slave;		port->actor_port_number = SLAVE_AD_INFO(slave).id;		// key is determined according to the link speed, duplex and user key(which is yet not supported)		//              ------------------------------------------------------------		// Port key :   | User key                       |      Speed       |Duplex|		//              ------------------------------------------------------------		//              16                               6               1 0		port->actor_admin_port_key = 0;	// initialize this parameter		port->actor_admin_port_key |= __get_duplex(port);		port->actor_admin_port_key |= (__get_link_speed(port) << 1);		port->actor_oper_port_key = port->actor_admin_port_key;		// if the port is not full duplex, then the port should be not lacp Enabled		if (!(port->actor_oper_port_key & AD_DUPLEX_KEY_BITS)) {			port->sm_vars &= ~AD_PORT_LACP_ENABLED;		}		// actor system is the bond's system		port->actor_system = BOND_AD_INFO(bond).system.sys_mac_addr;		// tx timer(to verify that no more than MAX_TX_IN_SECOND lacpdu's are sent in one second)		port->sm_tx_timer_counter = ad_ticks_per_sec/AD_MAX_TX_IN_SECOND;		port->aggregator = NULL;		port->next_port_in_aggregator = NULL;		__disable_port(port);		__initialize_port_locks(port);		// aggregator initialization		aggregator = &(SLAVE_AD_INFO(slave).aggregator);		ad_initialize_agg(aggregator);		aggregator->aggregator_mac_address = *((struct mac_addr *)bond->dev->dev_addr);		aggregator->aggregator_identifier = (++aggregator_identifier);		aggregator->slave = slave;		aggregator->is_active = 0;		aggregator->num_of_ports = 0;	}	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/4e0952c74ee450ded86e8946ce58ea8dfd05b007/bond_3ad.c/buggy/drivers/net/bonding/bond_3ad.c