if (down_interruptible (&dvbdmx->mutex)) 
if (down_interruptible(&dvbdmx->mutex)) 
static int dmx_section_feed_start_filtering(struct dmx_section_feed *feed){	struct dvb_demux_feed *dvbdmxfeed = (struct dvb_demux_feed *) feed;	struct dvb_demux *dvbdmx = dvbdmxfeed->demux;	int ret;	if (down_interruptible (&dvbdmx->mutex))		return -ERESTARTSYS;	if (feed->is_filtering) {		up(&dvbdmx->mutex);		return -EBUSY;	}	if (!dvbdmxfeed->filter) {		up(&dvbdmx->mutex);		return -EINVAL;	}	dvbdmxfeed->feed.sec.tsfeedp = 0;	dvbdmxfeed->feed.sec.secbuf = dvbdmxfeed->feed.sec.secbuf_base;	dvbdmxfeed->feed.sec.secbufp = 0;	dvbdmxfeed->feed.sec.seclen = 0;	if (!dvbdmx->start_feed) {		up(&dvbdmx->mutex);		return -ENODEV;	}	prepare_secfilters(dvbdmxfeed);	if ((ret = dvbdmx->start_feed(dvbdmxfeed)) < 0) {		up(&dvbdmx->mutex);		return ret;	}	spin_lock_irq(&dvbdmx->lock);	feed->is_filtering = 1;	dvbdmxfeed->state = DMX_STATE_GO;	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