Hey Thomas,
On Fri, Feb 12, 2021 at 10:40:06PM +0100, Thomas Lange wrote:
> I cannot confirm this problem.
> It works without problems on a bullseye VM.
>
> Maybe you can strace the dracut call and see which parameters are
> given to the dracut-install call.
attached is the output of `dracut --debug`.
The install call that fails is:
/usr/lib/dracut/dracut-install -D /var/tmp/dracut.OUZAAd/initramfs --kerneldir
/lib/modules/5.10.0-2-amd64/ -m --silent -s
'drm_crtc_init|drm_dev_register|drm_encoder_init' -S iw_handler_get_spy
Looking at the lines before that, it seems it looks at
/sys/bus/platform/devices/dock.0/modalias, but that file is empty, so I
guess that's why it's not passing a source to d-install?
The other failures happen after looking at
/sys/bus/platform/devices/dock.1/modalias and
/sys/bus/platform/devices/dock.2/modalias, which are also both empty.
Looking at the code in /usr/lib/dracut/modules.d/50drm/module-setup.sh:
# if the hardware is present, include module even if it is not currently
loaded,
# as we could e.g. be in the installer; nokmsboot boot parameter will
disable
# loading of the driver if needed
if [[ $hostonly ]]; then
for i in
/sys/bus/{pci/devices,platform/devices,virtio/devices,soc/devices/soc?}/*/modalias;
do
[[ -e $i ]] || continue
if hostonly="" dracut_instmods --silent -s
"drm_crtc_init|drm_dev_register|drm_encoder_init" -S "iw_handler_get_spy"
$(<"$i"); then
if strstr "$(modinfo -F filename $(<"$i") 2>/dev/null)"
radeon.ko; then
hostonly='' instmods amdkfd
fi
fi
done
else
dracut_instmods -o -s "drm_crtc_init|drm_dev_register|drm_encoder_init"
"=drivers/gpu/drm" "=drivers/staging"
fi
I have `hostonly` set, and it passes $(<"$i") to dracut_instmods, which is
empty in
the dock.X case.
FWIW, the hardware is a Thinkpad X201s, which has a dock port, but is
not docked right now.
HTH
Evgeni