Mailing List archive

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

[linux-dvb] Re: Fwd: dvb-patch for 2.5er kernels



Hi Andreas,

Andreas Schultz wrote:
> On Wednesday 11 September 2002 15:22, Martin Fahr wrote:
> 
> [...]
> 
> 
>>because the dvb-drivers didn't work with the new 2.5er kernels, I made the
>> changes by myself. The following patch applies to NEWSTRUCT-driver taken
>>via cvs at 09.09.2002. Of course there are still some problems, the most
>>important: The makefiles have to be changed. Because I am not familiar with
>>Makefiles, I had to use Makefile and Rules.make from some old kernel (the
>>kbuild-system changed in 2.5.21). I dont expect devfs to work. Correct me
>>if I am wrong.
> 
> 
> I've create a set of Config.in and Makefiles for 2.5. Archive is at: 
> http://warp10.net/dvd/dvb-make.tgz
> 
> The driver did not work for me with 2.5.42 and CONFIG_PREEMPT enabled, but it 
> also did not lockup as has be reported before. I'm going to rebuild the 
> kernel without PREEMPT and try again
> IWith CONFIG_PREEMPT i get the following warning in the syslog:
> 
> Oct 13 18:10:21 apophis kernel: bad: scheduling while atomic!
> Oct 13 18:10:21 apophis kernel: Call Trace:
> Oct 13 18:10:21 apophis kernel:  [schedule+109/696] schedule+0x3d/0x2b8
> Oct 13 18:10:21 apophis kernel:  [acpi_install_address_space_handler+535/564] 
> __delay+0x13/0x28
> Oct 13 18:10:21 apophis kernel:  [acpi_remove_address_space_handler+55/188] 
> __const_udelay+0x1f/0x24
> Oct 13 18:10:21 apophis kernel:  [sys_sched_get_priority_max+15/40] 
> __cond_resched+0x17/0x1c
> Oct 13 18:10:21 apophis kernel:  [<c844311c>] 
> i2c_busy_rise_and_fall+0x90/0x194[dvb-ttpci]
> Oct 13 18:10:21 apophis kernel:  [<c84433de>] i2c_write_out+0x56/0xe8 
> [dvb-ttpci]
> Oct 13 18:10:21 apophis kernel:  [<c8443d7f>] do_master_xfer+0x8f/0x13c 
> [dvb-ttpci]
> Oct 13 18:10:21 apophis kernel:  [<c8443e49>] master_xfer+0x1d/0x30 
> [dvb-ttpci]
> Oct 13 18:10:21 apophis kernel:  [<c898916a>] ves1893_readreg+0x72/0xa4 
> [alps_bsrv2]
> Oct 13 18:10:21 apophis kernel:  [<c89898cf>] bsrv2_ioctl+0x223/0x290 
> [alps_bsrv2]
> Oct 13 18:10:21 apophis kernel:  [<c8433a0c>] 
> dvb_frontend_internal_ioctl+0x4c/0x70 [dvb-core]
> Oct 13 18:10:21 apophis kernel:  [<c8433ca1>] 
> dvb_frontend_add_event+0xc1/0x118[dvb-core]
> Oct 13 18:10:21 apophis kernel:  [<c8436667>] .rodata+0xaa7/0x1000 [dvb-core]
> Oct 13 18:10:21 apophis kernel:  [<c843424a>] dvb_frontend_thread+0x172/0x220 
> [dvb-core]
> Oct 13 18:10:21 apophis kernel:  [<c84340d8>] dvb_frontend_thread+0x0/0x220 
> [dvb-core]
> Oct 13 18:10:21 apophis kernel:  [kernel_thread+25/140] 
> kernel_thread_helper+0x5/0xc
> 
> The cause for that is most likely the call to dvb_frontend_internal_ioctl() 
> from dvb_frontend_add_event() with the event spinlock held. I guess this 
> could be converted to a semaphore, but i have not tested that theory yet.

you are right, here we should use a semaphore. I'll apply this.

Holger



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



Home | Main Index | Thread Index