usr
/
lib
/
udev
➕ New
📤 Upload
✎ Editing:
kdump-udev-throttler
← Back
#!/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
💾 Save Changes
Cancel
📤 Upload File
×
Select File
Upload
Cancel
➕ Create New
×
Type
📄 File
📁 Folder
Name
Create
Cancel
✎ Rename Item
×
Current Name
New Name
Rename
Cancel
🔐 Change Permissions
×
Target File
Permission (e.g., 0755, 0644)
0755
0644
0777
Apply
Cancel