[vdr] [PATCH] rcu NPTL fix for 1.3.34

Klaus Schmidinger Klaus.Schmidinger at cadsoft.de
Sat Nov 5 13:56:07 CET 2005


Andreas Share wrote:
> 
>> Andreas Share wrote:
>>
>>> Hi,
>>>
>>> attached patch should make the rcu code NPTL compatible. Without the 
>>> patch using an RCU will fail (vdr hang during startup) on an NPTL 
>>> enabled system.
>>>
>>> I have only move over L. Nussels lirc NPTL fix to the rcu code.
>>>
>>> Greetings
>>>
>>> Andreas
>>
>>
>> Have you actually tested this?
>> I wonder if simply removing all lock calls would work,
>> because there _is_ a thread and a foreground function that
>> both want to transfer data...
>>
>> Klaus
> 
> 
> Yes, i have tested the patch on my system. With the lock´s the rcu-code 
> block vdr completely during startup with NPTL enabled libraries, 
> especialy this ones in /lib/tls. LD_ASSUME_KERNEL doesn´t work for this 
> problem, only moving the tls-folder away from /lib (and do a ldconfig 
> afters this) have let the rcu work again on my suse 9.1.
> 
> Removing the lock in the main loop only will resolve this, but IR 
> learning will fail, so i have removed the other locks also.
> 
> With the patch vdr/rcu (learning included) works without any sideeffect 
> in daily use since 21.10. on my system (internal IR-Header, DBox IR Codes).
> 
> Greetings
> 
> Andreas Share

Well, I don't have a good feeling simply throwing out the
locks here just because NPTL can't handle them.

I guess this will have to wait then until I use NPTL myself,
although I don't see this happening any time soon... ;-)

Unless, of course, you can come up with a solution that
still does some locking and runs with NPTL. The file handle
_is_ accessed from both the foreground and the background thread,
so this just can't work reliably without locking.

Klaus



More information about the vdr mailing list