Service restarts every 10 min forever while the app holds the mutex
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 52/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- csharp
- Domain
- backend, operating-systems
Research direction
Start with FanControl.Service.Worker.ExecuteAsync and the mutex timeout path named in the service log; inspect how the service handles an app already holding the mutex and how that affects its exit code. Reproduce with the service at boot and app at logon after the failure described in #4244. Done when that mutex-held scenario stops the recurring SCM restart loop or waits to take over, as intended.
Written by the indexing model from the issue text.
Description
If you are experiencing a crash
No crash dump: the service stops with a fatal error on each start. service_log.txt and Event Viewer entries below.
Version and environment
- Fan Control version: V284 (since V282, first seen 2026-10-07)
- .NET build: .NET 10
- Windows version and build: Windows 11 Enterprise 26H2, build 26300.9711
- Installation method: Winget
- Running as a desktop app or Windows service: both (service at boot, app at logon)
- Startup method: service at boot + scheduled task at logon
- Plugins: none
Describe the bug
When the service dies while the app is running (for me: the crash in #4244 after a Fast Startup boot, then the app starts at logon), SCM's recovery restarts it after 60 s, 5 min, then every 10 min. Each start fails after 10 s with "Failed to acquire exclusive mutex within timeout", because the app holds the mutex. Windows counts that as another failure, so the 1 h reset period never passes and it loops until the next cold boot: 383 times since Oct 17 (System log, event 7031). Fans are fine, the app controls them.
Steps to reproduce
- Service at boot + app at logon.
- The service crashes once (#4244), then the app starts at logon.
- service_log.txt gets a TimeoutException every 10 min until the next cold boot.
Expected and actual behavior
Expected: when the app holds the mutex, the service stops cleanly (exit code 0) so SCM recovery isn't triggered. Or it keeps waiting for the mutex, which would also let it take over when the app exits. Actual: an endless 10-min restart loop.
For service, startup, or crash issues
service_log.txt, System log 7031, recovery settings
[V284] 27.10.2026 08:54:11: [ServiceWorker] Fatal error: System.TimeoutException: Failed to acquire exclusive mutex within timeout.
at FanControl.Service.Worker.ExecuteAsync(CancellationToken stoppingToken)
[V284] 27.10.2026 08:59:21: (same)
[V284] 27.10.2026 09:09:32: (same, then every 10 min until the next cold boot)
The FanControl Service service terminated unexpectedly. It has done this 40 time(s). The following corrective action will be taken in 600000 milliseconds: Restart the service.
sc qfailure FanControl.Service
RESET_PERIOD (in seconds) : 3600
FAILURE_ACTIONS : RESTART -- Delay = 60000 milliseconds.
RESTART -- Delay = 300000 milliseconds.
RESTART -- Delay = 600000 milliseconds.
Relevant hardware specs and setup
Not hardware specific. Same PC as #4244.
- Dominant language
- No language data
- Stars
- 21.1k
- Forks
- 619
- Avg merge
- 8h 42m
- Merged PRs (30d)
- 2
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Rem0o/FanControl.Releases
-
Difficulty 3/5 1-2 days Newbie friendliness 56/100
Rem0o/FanControl.Releases#4248 · 1 reaction ·
-
bug next version
Difficulty 4/5 3-5 days Newbie friendliness 35/100
Rem0o/FanControl.Releases#4247 · 5 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 38/100
Rem0o/FanControl.Releases#4244 · 32 comments ·
-
Difficulty 4/5 3-5 days Newbie friendliness 25/100
Rem0o/FanControl.Releases#4241 ·
-
bug next version
Difficulty 4/5 3-5 days Newbie friendliness 48/100
Rem0o/FanControl.Releases#4239 · 2 comments ·
All issues in Rem0o/FanControl.Releases
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
cloudevents/sdk-go#1346 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
cyrusimap/cyrus-imapd#6640 ·
Maintainers usually reply within 2 days
-
GD decoder discards the finfo media type in mediaTypeByBinary() since 4.4.0Possibly taken @lazerg claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 77/100
Intervention/image#1556 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 60/100
Maintainers usually reply within 1 day