free_irq(self->io.irq, dev); 
smsc_ircc_stop_interrupts(self);  /* if we are called from smsc_ircc_resume we don't have IRQ reserved */ if (!self->io.suspended) free_irq(self->io.irq, dev);  
static int smsc_ircc_net_close(struct net_device *dev){	struct smsc_ircc_cb *self;	IRDA_DEBUG(1, "%s\n", __FUNCTION__);	IRDA_ASSERT(dev != NULL, return -1;);	self = netdev_priv(dev);	IRDA_ASSERT(self != NULL, return 0;);	/* Stop device */	netif_stop_queue(dev);	/* Stop and remove instance of IrLAP */	if (self->irlap)		irlap_close(self->irlap);	self->irlap = NULL;	free_irq(self->io.irq, dev);	disable_dma(self->io.dma);	free_dma(self->io.dma);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/e812cb5226af32aec91bcbaa8365bd7f921b6ebb/smsc-ircc2.c/buggy/drivers/net/irda/smsc-ircc2.c