From c6021648f1db52a5e2eee31ec409efe468fe5af2 Mon Sep 17 00:00:00 2001 From: Kairui Song Date: Fri, 19 Mar 2021 18:21:11 +0800 Subject: [PATCH] Don't iterate the whole /sys/devices just to find drm device On some large systems, /sys/devices is huge and it's not a wise idea to iterate it. `find` may cause tremendous contention on the kernfs_mutex when there are already stress on /sys, and it will perform very very poorly. Simply check if drm class presents should be good enough. Signed-off-by: Kairui Song Acked-by: Pingfan Liu --- dracut-module-setup.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dracut-module-setup.sh b/dracut-module-setup.sh index 8316589..affd711 100755 --- a/dracut-module-setup.sh +++ b/dracut-module-setup.sh @@ -58,7 +58,7 @@ depends() { _dep="$_dep znet" fi - if [ -n "$( find /sys/devices -name drm )" ] || [ -d /sys/module/hyperv_fb ]; then + if [ -n "$( ls -A /sys/class/drm 2>/dev/null )" ] || [ -d /sys/module/hyperv_fb ]; then add_opt_module drm fi