Mail archive

Re: [alpine-devel] eudev pushed to git master (edge)

From: Isaac Dunham <>
Date: Sun, 19 Jul 2015 14:48:10 -0700

On Sun, Jul 19, 2015 at 01:47:16PM -0700, Isaac Dunham wrote:
> On Fri, Jul 17, 2015 at 11:52:07AM +0200, Natanael Copa wrote:
> > Hi,
> >
> > I pushed eudev to the edge repo.
> >
> > libkmod will not work with busybox dempod (due to it not yet creates
> > the modules.dep.bin), so I disabled this in eudev, assuming that it
> > will fall back to fork/exec modprobe instead for modaliases.
> >
> > It turns out that I was wrong. when built with --disable-libkmod it
> > does not load any modaliases at all. This result in no /dev/input/*
> > devices and Xorg "hangs". (does not respond to any input).
> >
> > For now I have forced starting the hwdrivers. This should at least make
> > xorg work, but we still do not have proper hotplugging. That is, if you
> > hotplug a device that needs a driver, it will not automatically be
> > loaded.
> I need to test this, but anyhow...
> As far as I can tell, the hotplugging is not hardcoded, but entirely
> within rules/80-drivers.rules
> If I am correct, you could enable use of Busybox via:
> sed -e 's/RUN{builtin}\(.*\)kmod load/RUN\1modprobe -ab/g' -i \
> "$pkgdir"/lib/udev/rules.d/80-drivers.rules
> Testing that might be...interesting, though.

Applied ~ those changes to /{lib=>etc}/udev/rules.d/80-drivers.rules
(I used "busybox modprobe" instead of "modprobe"), then disabled
interface name mutilation (touch /etc/udev/rules.d/80-net-name-slot.rules),
dropped a symlink to busybox in /lib/udev/ (udev apparently execs
"/lib/udev/<command>" with the command line from the RUN+=... rule).

This apparently works for hotplugging, but coldplugging is not reliable.
Specifically, none of my network drivers were loaded...although they
would have been borked thanks to persistent interface mutilation.
If "mousedev" gets loaded by the initramfs, then coldplugging was probably
completely non-functional.

Isaac Dunham

Received on Sun Jul 19 2015 - 14:48:10 UTC