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