if (CARDS_WITH_FAULTY_LINK_INDICATORS(subid)) { 
if (CARDS_WITH_FAULTY_LINK_INDICATORS(sp->device_type, subid)) { 
static int s2io_ethtool_idnic(struct net_device *dev, u32 data){	u64 val64 = 0, last_gpio_ctrl_val;	nic_t *sp = dev->priv;	XENA_dev_config_t __iomem *bar0 = sp->bar0;	u16 subid;	subid = sp->pdev->subsystem_device;	last_gpio_ctrl_val = readq(&bar0->gpio_control);	if ((subid & 0xFF) < 0x07) {		val64 = readq(&bar0->adapter_control);		if (!(val64 & ADAPTER_CNTL_EN)) {			printk(KERN_ERR			       "Adapter Link down, cannot blink LED\n");			return -EFAULT;		}	}	if (sp->id_timer.function == NULL) {		init_timer(&sp->id_timer);		sp->id_timer.function = s2io_phy_id;		sp->id_timer.data = (unsigned long) sp;	}	mod_timer(&sp->id_timer, jiffies);	if (data)		msleep_interruptible(data * HZ);	else		msleep_interruptible(MAX_FLICKER_TIME);	del_timer_sync(&sp->id_timer);	if (CARDS_WITH_FAULTY_LINK_INDICATORS(subid)) {		writeq(last_gpio_ctrl_val, &bar0->gpio_control);		last_gpio_ctrl_val = readq(&bar0->gpio_control);	}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/541ae68f6ddf1c27aa6879935ce541f110484202/s2io.c/buggy/drivers/net/s2io.c