-
-
Notifications
You must be signed in to change notification settings - Fork 6.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EpgContainer: Fix Deadlock when calling Observer with lock #4751
Conversation
jenkins build this please |
Backtrace: http://paste.ubuntu.com/7479831/ |
Maybe do this against Gotham instead? Otherwise we probably pull our normal shit and not do the right thing later for master since there's no incentive. |
It's a bug in master, too. So a non deadlocking master is highly appreciated until @opdenkamp is less busy. Edit: s/segfault/deadlock/ |
Ah, the famous "quick fix", huh? :) What was the goal here? To get the notification outside the critical section? If so, there's actually a double critical section usage here (to be sure, to be sure?) See ln 673. |
Yes - you are perfectly right. That was in deed a quick fix and I simply overlooked that other section. The "fix" does not make any sense now. I will close that PR and leave it to the experts. |
I think you can just drop the inside critical section (or the outside one if doing a premature update instead of correctly interpreting m_iNextEpgActiveTagCheck isn't an issue). Then unlock the crit section prior to your current change. @opdenkamp comments? |
I think you can safely move the other block too. the good thing about bReturn is that it always exits the methond at its end. |
jenkins build this please |
the diff is annoying to read like this on github, but looks okay :) |
@opdenkamp fritsch@820b852?w=0 ?w=0 is your friend :) |
oh wow, why isn't that enabled by default? thanks! :) |
That is a neat trick :) |
EpgContainer: Fix Deadlock when calling Observer with lock
Quick fix especially for v13. Longterm should use proper async handling.
Edit: This is also relevant for master of course.