From 517895f69d7ea42c2fa7694d290a38bea6ebe2ac Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Thu, 17 Mar 2022 10:26:45 -0500 Subject: [PATCH] rootfs: Avoid unnecessarily restarting rsyslog When the DHCP lease is renewed, if the specified log servers are the same as the previous lease, there is no reason to regenerate the *rsyslog* configuration file and restart the service. --- rootfs/overlay/usr/lib/dhcpcd/dhcpcd-hooks/60-syslog | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/rootfs/overlay/usr/lib/dhcpcd/dhcpcd-hooks/60-syslog b/rootfs/overlay/usr/lib/dhcpcd/dhcpcd-hooks/60-syslog index f377917..654f380 100644 --- a/rootfs/overlay/usr/lib/dhcpcd/dhcpcd-hooks/60-syslog +++ b/rootfs/overlay/usr/lib/dhcpcd/dhcpcd-hooks/60-syslog @@ -12,10 +12,13 @@ gen_action() { changed=false if [ -n "${interface}" ] && [ -d /run/rsyslog.d ]; then if [ -n "${new_log_servers}" ]; then - echo '# Generated by dhcpcd' > /run/rsyslog.d/dhcpcd."${interface}".conf - for s in ${new_log_servers}; do - gen_action "${s}" >> /run/rsyslog.d/dhcpcd."${interface}".conf - done + if [ "${new_log_servers}" != "${old_log_servers}" ]; then + echo '# Generated by dhcpcd' \ + > /run/rsyslog.d/dhcpcd."${interface}".conf + for s in ${new_log_servers}; do + gen_action "${s}" >> /run/rsyslog.d/dhcpcd."${interface}".conf + done + fi changed=true elif [ -n "${old_log_servers}" ]; then rm -f /run/rsyslog.d/dhcpcd."${interface}".conf