printk(KERN_DEBUG "ERROR: active aggregator is empty\n"); 
printk(KERN_DEBUG DRV_NAME ": %s: Error: active " "aggregator is empty\n", dev->name); 
int bond_3ad_xmit_xor(struct sk_buff *skb, struct net_device *dev){	struct slave *slave, *start_at;	struct bonding *bond = dev->priv;	int slave_agg_no;	int slaves_in_agg;	int agg_id;	int i;	struct ad_info ad_info;	int res = 1;	/* make sure that the slaves list will	 * not change during tx	 */	read_lock(&bond->lock);	if (!BOND_IS_OK(bond)) {		goto out;	}	if (bond_3ad_get_active_agg_info(bond, &ad_info)) {		printk(KERN_DEBUG "ERROR: bond_3ad_get_active_agg_info failed\n");		goto out;	}	slaves_in_agg = ad_info.ports;	agg_id = ad_info.aggregator_id;	if (slaves_in_agg == 0) {		/*the aggregator is empty*/		printk(KERN_DEBUG "ERROR: active aggregator is empty\n");		goto out;	}	slave_agg_no = bond->xmit_hash_policy(skb, dev, slaves_in_agg);	bond_for_each_slave(bond, slave, i) {		struct aggregator *agg = SLAVE_AD_INFO(slave).port.aggregator;		if (agg && (agg->aggregator_identifier == agg_id)) {			slave_agg_no--;			if (slave_agg_no < 0) {				break;			}		}	}	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);		goto out;	}	start_at = slave;	bond_for_each_slave_from(bond, slave, i, start_at) {		int slave_agg_id = 0;		struct aggregator *agg = SLAVE_AD_INFO(slave).port.aggregator;		if (agg) {			slave_agg_id = agg->aggregator_identifier;		}		if (SLAVE_IS_OK(slave) && agg && (slave_agg_id == agg_id)) {			res = bond_dev_queue_xmit(bond, skb, slave->dev);			break;		}	}out:	if (res) {		/* no suitable interface, frame not sent */		dev_kfree_skb(skb);	}	read_unlock(&bond->lock);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/4e0952c74ee450ded86e8946ce58ea8dfd05b007/bond_3ad.c/buggy/drivers/net/bonding/bond_3ad.c