cache: improve out-of-disk condition
When suspect SIGBUS happens, print helpful error and try to remove the cache, so that the service might work again if auto-restarted.
Theoretically we could longjmp() out of the SIGBUS handler, but that would be rather messy, so let the process die.
Fixes https://gitlab.labs.nic.cz/knot/knot-resolver/issues/197 (in a sense).
Output:
SIGBUS received; this is most likely due to filling up the filesystem where cache resides.
Cache file deleted.
kresd can not recover reliably by itself, exiting.
(and the process exits as if SIGBUS had been unhandled)
Merge request reports
Activity
- Resolved by Vladimír Čunát
- Resolved by Vladimír Čunát
marked as a Work In Progress from 8590f9f5
enabled an automatic merge when the pipeline for efc08a64 succeeds
mentioned in commit 88e78c66
mentioned in commit f41ae543
mentioned in merge request !677 (merged)
mentioned in commit b4f1082c