summaryrefslogtreecommitdiff
path: root/daemons
diff options
context:
space:
mode:
authorTony Asleson <tasleson@redhat.com>2022-08-09 17:44:10 -0500
committerTony Asleson <tasleson@redhat.com>2022-09-16 10:49:36 -0500
commitb3d8366ff21ee69380ab5fbca48204212a64a0cd (patch)
tree43e9c8856652d79699e4bcb228103e14a646f22e /daemons
parent05f7fa5a8536d37b6a711ac0baab5bfd105bb0cc (diff)
downloadlvm2-b3d8366ff21ee69380ab5fbca48204212a64a0cd.tar.gz
lvmdbusd: Add SIGUSR2 to dump flight recorder
Diffstat (limited to 'daemons')
-rw-r--r--daemons/lvmdbusd/main.py1
-rw-r--r--daemons/lvmdbusd/utils.py4
2 files changed, 5 insertions, 0 deletions
diff --git a/daemons/lvmdbusd/main.py b/daemons/lvmdbusd/main.py
index 7b455052e..5e6f72cdc 100644
--- a/daemons/lvmdbusd/main.py
+++ b/daemons/lvmdbusd/main.py
@@ -77,6 +77,7 @@ def install_signal_handlers():
signal_add(GLib.PRIORITY_HIGH, signal.SIGHUP, utils.handler, signal.SIGHUP)
signal_add(GLib.PRIORITY_HIGH, signal.SIGINT, utils.handler, signal.SIGINT)
signal_add(GLib.PRIORITY_HIGH, signal.SIGUSR1, utils.handler, signal.SIGUSR1)
+ signal_add(GLib.PRIORITY_HIGH, signal.SIGUSR2, utils.handler, signal.SIGUSR2)
else:
log_error("GLib.unix_signal_[add|add_full] are NOT available!")
diff --git a/daemons/lvmdbusd/utils.py b/daemons/lvmdbusd/utils.py
index d24a34935..a10fa7864 100644
--- a/daemons/lvmdbusd/utils.py
+++ b/daemons/lvmdbusd/utils.py
@@ -346,8 +346,12 @@ def dump_threads_stackframe():
# noinspection PyUnusedLocal
def handler(signum):
try:
+ # signal 10
if signum == signal.SIGUSR1:
dump_threads_stackframe()
+ # signal 12
+ elif signum == signal.SIGUSR2:
+ cfg.blackbox.dump()
else:
cfg.run.value = 0
log_debug('Exiting daemon with signal %d' % signum)