Skip to content

Commit

Permalink
Merge pull request #3706 from vyos/mergify/bp/sagitta/pr-3679
Browse files Browse the repository at this point in the history
T3202: Enable wireguard debug messages (backport #3679)
  • Loading branch information
c-po authored Jun 25, 2024
2 parents 0c04803 + 5b0faee commit 621dd08
Show file tree
Hide file tree
Showing 2 changed files with 27 additions and 0 deletions.
13 changes: 13 additions & 0 deletions interface-definitions/system_option.xml.in
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,19 @@
<valueless/>
</properties>
</leafNode>
<node name="debug">
<properties>
<help>Dynamic debugging for kernel module</help>
</properties>
<children>
<leafNode name="wireguard">
<properties>
<help>Dynamic debugging for Wireguard module</help>
<valueless/>
</properties>
</leafNode>
</children>
</node>
</children>
</node>
<leafNode name="keyboard-layout">
Expand Down
14 changes: 14 additions & 0 deletions src/conf_mode/system_option.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
from vyos.configverify import verify_interface_exists
from vyos.system import grub_util
from vyos.template import render
from vyos.utils.dict import dict_search
from vyos.utils.file import write_file
from vyos.utils.kernel import check_kmod
from vyos.utils.process import cmd
from vyos.utils.process import is_systemd_service_running
from vyos.utils.network import is_addr_assigned
Expand All @@ -36,6 +39,7 @@
ssh_config = r'/etc/ssh/ssh_config.d/91-vyos-ssh-client-options.conf'
systemd_action_file = '/lib/systemd/system/ctrl-alt-del.target'
usb_autosuspend = r'/etc/udev/rules.d/40-usb-autosuspend.rules'
kernel_dynamic_debug = r'/sys/kernel/debug/dynamic_debug/control'
time_format_to_locale = {
'12-hour': 'en_US.UTF-8',
'24-hour': 'en_GB.UTF-8'
Expand Down Expand Up @@ -157,8 +161,18 @@ def apply(options):
time_format = time_format_to_locale.get(options['time_format'])
cmd(f'localectl set-locale LC_TIME={time_format}')

# Reload UDEV, required for USB auto suspend
cmd('udevadm control --reload-rules')

# Enable/disable dynamic debugging for kernel modules
modules = ['wireguard']
modules_enabled = dict_search('kernel.debug', options) or []
for module in modules:
if module in modules_enabled:
check_kmod(module)
write_file(kernel_dynamic_debug, f'module {module} +p')
else:
write_file(kernel_dynamic_debug, f'module {module} -p')

if __name__ == '__main__':
try:
Expand Down

0 comments on commit 621dd08

Please sign in to comment.