Server IP : 10.254.12.21 / Your IP : 10.254.12.21 Web Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/5.6.40 System : Linux arit.skru.ac.th 3.10.0-1160.76.1.el7.x86_64 #1 SMP Wed Aug 10 16:21:17 UTC 2022 x86_64 User : apache ( 48) PHP Version : 5.6.40 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/lib/udev/ |
Upload File : |
#!/bin/bash # This util helps to reduce the workload of kdump service restarting # on udev event. When hotplugging memory / CPU, multiple udev # events may be triggered concurrently, and obviously, we don't want # to restart kdump service for each event. # This script will be called by udev, and make sure kdump service is # restart after all events we are watching are settled. # On each call, this script will update try to aquire the $throttle_lock # The first instance acquired the file lock will keep waiting for events # to settle and then reload kdump. Other instances will just exit # In this way, we can make sure kdump service is restarted immediately # and for exactly once after udev events are settled. throttle_lock="/var/lock/kdump-udev-throttle" exec 9>$throttle_lock if [ $? -ne 0 ]; then echo "Failed to create the lock file! Fallback to non-throttled kdump service restart" /bin/kdumpctl reload exit 1 fi flock -n 9 if [ $? -ne 0 ]; then echo "Throttling kdump restart for concurrent udev event" exit 0 fi # Wait for at least 1 second, at most 4 seconds for udev to settle # Idealy we will have a less than 1 second lag between udev events settle # and kdump reload sleep 1 && udevadm settle --timeout 3 # Release the lock, /bin/kdumpctl will block and make the process # holding two locks at the same time and we might miss some events exec 9>&- /bin/kdumpctl reload exit 0