Mailing List archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[linux-dvb] Re: changing channel leads to system crash withSkystar2
> Helmut Gildein wrote:
> > Hi all,
> >
> > I solved the problem.
> >
> > It appears that the reason for the kernel message
> >
> > kernel: dvb_demux_feed_del: feed not in list (type=0 state=0
pid=a7)
> >
> > caused the system to freeze. I modified the routine
dvb_demux_feed_del
> > in dvb_demux.c not to return after the error appears (see below) and
it
> > works fine now! May be someone can proof whether this is dangerous
to do
> > ?
> >
> > static void dvb_demux_feed_del(struct dvb_demux_feed *feed)
> > {
> > if (!(dvb_demux_feed_find(feed))) {
> > printk(KERN_ERR "%s: feed not in list (type=%x state=%x
pid=%x)\n",
> > __FUNCTION__, feed->type, feed->state, feed->pid);
> > /* return; */
> > }
> >
> > list_del(&feed->list_head);
> > }
> >
>
> I don't know if that is dangerous (anyway it's not correct to ignore
> that the feed is not present in the list), but I've found some more
> lines that look strange:
>
> [dvb_demux.c, line 708]
> if (!demux->stop_feed) {
> up(&demux->mutex);
> return -ENODEV;
> }
>
> ret = demux->stop_feed(feed);
>
> I think they should read:
>
> if (!(ret=demux->stop_feed)) {
> up(&demux->mutex);
> return -ENODEV;
> }
>
> otherwise stop_feed is called twice.
> Helmut, could you please kindly check if that fixes your problem
> (without your modification)?
>
> Niklas
>
Niklas,
with your modification applied and mine removed, the system freezes
again, but I don't get the "feed not in list" message.
With your modification applied and mine also, I get the message, but
xine is not displaying anything (neither tv, audio nor osd channel
list), but system keeps running. So, I am now using my modification
solely.
Helmut
--
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.
Home |
Main Index |
Thread Index