while(f->next != dvbdmxfilter) 
while (f->next != dvbdmxfilter) 
static int dmx_section_feed_release_filter(struct dmx_section_feed *feed,				struct dmx_section_filter* filter){	struct dvb_demux_filter *dvbdmxfilter = (struct dvb_demux_filter *) filter, *f;	struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *) feed;	struct dvb_demux *dvbdmx = dvbdmxfeed->demux;	if (down_interruptible (&dvbdmx->mutex))		return -ERESTARTSYS;	if (dvbdmxfilter->feed != dvbdmxfeed) {		up(&dvbdmx->mutex);		return -EINVAL;	}	if (feed->is_filtering)		feed->stop_filtering(feed);	spin_lock_irq(&dvbdmx->lock);	f = dvbdmxfeed->filter;	if (f == dvbdmxfilter) {		dvbdmxfeed->filter = dvbdmxfilter->next;	} else {		while(f->next != dvbdmxfilter)			f = f->next;		f->next = f->next->next;	}	dvbdmxfilter->state = DMX_STATE_FREE;	spin_unlock_irq(&dvbdmx->lock);	up(&dvbdmx->mutex);	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/dad4a73071532448f6cee29791476494a8eb3a58/dvb_demux.c/clean/drivers/media/dvb/dvb-core/dvb_demux.c