Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: Oops in dvbdmx_release_ts_feed (2.6.0-test9)



Ralph Metzler wrote:
> Andreas Oberritter writes:
>  > 
>  > Thank you, Ralph. Can anyone please test the attached patch for the
>  > dvb-kernel tree to see if it fixes the problem?
> 
> The possible problem I referred to and which your patch
> fixes only could lead to segfaults during interrupt or bottom half
> caused by possibly deleted but not yet unlinked list entries or other
> structures. 
> The original problem was in dvbdmx_release_ts_feed() when called
> from user space!? The bug causing this probably is still there.

I see two problems:

- spinlocks only disable irqs on the local CPU, so every access
  to the feed_list must be protected against accesses from another
  CPU to be SMP save; but dvb_dmx_swfilter_packet() might be problematic
  because it calls the feed callback which iterating the feed list
- spin_unlock_irq() enables irqs unconditionally; check if that's OK
  or use spin_lock_irq_save()/spin_inlock_orq_restore()

Thanks,
Johannes


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index