Skip to content
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

Get suspends from logind to ignore watchdog then #29

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Commits on Sep 2, 2022

  1. Get suspends from logind to ignore watchdog then

    On every resume, the watchdog thread happily reports that there has been
    a deadlock since the canary hasn't responded since before the computer
    resumed. Get notifications from logind over dbus to tell when suspend
    happens and ignore the one watchdog violation that might happen then.
    
    Depending on how threads are scheduled on resume (canary scheduled
    first), the watchdog after resume might not happen and the next real
    deadlock will take two watchdog cycles to hit, which is not horrible in
    my mind but might be fixable by having the ignore condition have a
    timeout for N seconds after resume.
    jmerdich committed Sep 2, 2022
    Configuration menu
    Copy the full SHA
    572b3c7 View commit details
    Browse the repository at this point in the history
  2. Add a timeout for resume-deadlock ignores

    On my personal computer, the scheduling race condition mentioned in the
    last commit happens about ~1/4 of the time. That's too often to ignore.
    
    Only make the resume-ignore condition apply for a few seconds after
    resume. Additionally, this feature can now be disabled by setting a
    threshold of zero.
    jmerdich committed Sep 2, 2022
    Configuration menu
    Copy the full SHA
    dd8e5e9 View commit details
    Browse the repository at this point in the history