From patchwork Mon Apr 25 12:02:23 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [07/37] modutils-initscripts: fix wrong order of module loading happening in udev Date: Mon, 25 Apr 2011 12:02:23 -0000 From: Gary Thomas X-Patchwork-Id: 2819 Message-Id: <4DB562CF.1020100@mlbassoc.com> To: Saul Wold Cc: Koen Kooi , openembedded-core@lists.openembedded.org, Kang Kai On 04/23/2011 12:28 AM, Saul Wold wrote: > From: =?UTF-8?q?Petr=20=C5=A0tetiar?= > > In the current state, udev init script is loaded as 3rd and modutils.sh as > 20th, so udevadm called in udev init script loads all kernel modules in some > unpredictable order, not honoring in any way specified order of modules in > /etc/modules. This causes some troubles mainly in the first boot. So to fix > this we now move loading of the kernel modules just before we exec udev init > script. Example of the current state: > > Starting udev > rtc-m48t86 rtc-m48t86: rtc core: registered m48t86 as rtc0 > rtc-m48t86 rtc-m48t86: battery ok > ep93xx-rtc ep93xx-rtc: rtc core: registered ep93xx-rtc as rtc1 > > root@ts72xx:~# cat /etc/modules > rtc-ep93xx > ohci-hcd > ts72xx_sbcinfo > rtc-m48t86 > > As you can guess, this is really wrong behaviour, because I've rtc1 as the > main time source for my system. > > root@ts72xx:~# cat /etc/default/hwclock > HWCLOCKACCESS=yes > HWCLOCKDEVICE=/dev/rtc1 > > Expected behaviour with this patch applied: > > Please wait: booting... > ep93xx-rtc ep93xx-rtc: rtc core: registered ep93xx-rtc as rtc0 > usbcore: registered new device driver usb > ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver > ... > rtc-m48t86 rtc-m48t86: rtc core: registered m48t86 as rtc1 > rtc-m48t86 rtc-m48t86: battery ok > Starting udev > > Signed-off-by: Petr Štetiar > > (based on http://patches.openembedded.org/patch/1917/) > Signed-off-by: Koen Kooi > Signed-off-by: Saul Wold > --- > .../modutils/modutils-initscripts.bb | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/meta/recipes-kernel/modutils/modutils-initscripts.bb b/meta/recipes-kernel/modutils/modutils-initscripts.bb > index 1665955..5ae34b4 100644 > --- a/meta/recipes-kernel/modutils/modutils-initscripts.bb > +++ b/meta/recipes-kernel/modutils/modutils-initscripts.bb > @@ -4,10 +4,10 @@ LICENSE = "PD" > LIC_FILES_CHKSUM = "file://LICENSE;md5=7bf87fc37976e93ec66ad84fac58c098" > SRC_URI = "file://modutils.sh \ > file://PD.patch" > -PR = "r4" > +PR = "r5" > > INITSCRIPT_NAME = "modutils.sh" > -INITSCRIPT_PARAMS = "start 20 S ." > +INITSCRIPT_PARAMS = "start 2 S ." > > inherit update-rc.d > Should there not be a corresponding change to modutils_2.4.27.bb? It's not clear to me where there are these two separate recipes, but they should at least be kept in sync. diff --git a/meta/recipes-kernel/modutils/modutils_2.4.27.bb b/meta/recipes-kernel/modutils/modutils_2.4.27.bb index 1ebc90c..2944201 100644 --- a/meta/recipes-kernel/modutils/modutils_2.4.27.bb +++ b/meta/recipes-kernel/modutils/modutils_2.4.27.bb @@ -5,7 +5,7 @@ manageable for all users, administrators and distribution maintainers." LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=8ca43cbc842c2336e835926c2166c28b" DEPENDS = "bison-native" -PR = "r9" +PR = "r10" SRC_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/modutils/v2.4/modutils-${PV}.tar.bz2 \ file://lex.l.diff;patch=1 \ @@ -51,7 +51,7 @@ if test -n "$D"; then done fi fi -update-rc.d $D modutils.sh start 20 S . +update-rc.d $D modutils.sh start 2 S . } pkg_prerm_modutils () {