* busybox & update-alternatives
@ 2011-02-11 16:53 Gary Thomas
2011-02-11 17:41 ` Tom Rini
0 siblings, 1 reply; 10+ messages in thread
From: Gary Thomas @ 2011-02-11 16:53 UTC (permalink / raw)
To: Poky
A build for my platform with today's master
49a18f1748d2417958b8e19cdd58c0c79f4fc728
shows a new behaviour - many messages like this:
update-alternatives: Linking //usr/bin/wc to ../../bin/busybox
Questions:
* Is this truly new or was it just quiet before?
* Can't this be done at image build time? On my little
embedded OMAP-L138, it takes nearly 2 minutes to run
through this. My root is a ramdisk, so this is a cost
I see on _every_ boot.
* If it can't be done at build time, can I disable it?
Thanks
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
^ permalink raw reply [flat|nested] 10+ messages in thread* Re: busybox & update-alternatives 2011-02-11 16:53 busybox & update-alternatives Gary Thomas @ 2011-02-11 17:41 ` Tom Rini 2011-02-11 18:24 ` Gary Thomas 0 siblings, 1 reply; 10+ messages in thread From: Tom Rini @ 2011-02-11 17:41 UTC (permalink / raw) To: poky On 02/11/2011 09:53 AM, Gary Thomas wrote: > A build for my platform with today's master > 49a18f1748d2417958b8e19cdd58c0c79f4fc728 > shows a new behaviour - many messages like this: > update-alternatives: Linking //usr/bin/wc to ../../bin/busybox > > Questions: > * Is this truly new or was it just quiet before? > * Can't this be done at image build time? On my little > embedded OMAP-L138, it takes nearly 2 minutes to run > through this. My root is a ramdisk, so this is a cost > I see on _every_ boot. > * If it can't be done at build time, can I disable it? It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). -- Tom Rini Mentor Graphics Corporation ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 17:41 ` Tom Rini @ 2011-02-11 18:24 ` Gary Thomas 2011-02-11 18:30 ` Mark Hatle 0 siblings, 1 reply; 10+ messages in thread From: Gary Thomas @ 2011-02-11 18:24 UTC (permalink / raw) To: Tom Rini; +Cc: poky On 02/11/2011 10:41 AM, Tom Rini wrote: > On 02/11/2011 09:53 AM, Gary Thomas wrote: >> A build for my platform with today's master >> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 >> shows a new behaviour - many messages like this: >> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox >> >> Questions: >> * Is this truly new or was it just quiet before? >> * Can't this be done at image build time? On my little >> embedded OMAP-L138, it takes nearly 2 minutes to run >> through this. My root is a ramdisk, so this is a cost >> I see on _every_ boot. >> * If it can't be done at build time, can I disable it? > > It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides > foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the > conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the > recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). Running the postinst script manually, I get this error: + update-rc.d -s syslog busybox-udhcpc defaults usage: update-rc.d [-n] [-f] [-r <root>] <basename> remove update-rc.d [-n] [-r <root>] [-s] <basename> defaults [NN | sNN kNN] update-rc.d [-n] [-r <root>] [-s] <basename> start|stop NN runlvl [runlvl] [...] . -n: not really -f: force -v: verbose -r: alternate root path (default is /) -s: invoke start methods if appropriate to current runlevel Looks like update-rc.d is not being called properly. This was introduced by commit 427472e980cd6254a5e4ef37209b327e15af259b Author: Mark Hatle <mark.hatle@windriver.com> Date: Thu Feb 3 19:29:50 2011 -0600 Mark, any comments? -- ------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------ ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 18:24 ` Gary Thomas @ 2011-02-11 18:30 ` Mark Hatle 2011-02-11 18:37 ` Mark Hatle 2011-02-12 6:05 ` Khem Raj 0 siblings, 2 replies; 10+ messages in thread From: Mark Hatle @ 2011-02-11 18:30 UTC (permalink / raw) To: Gary Thomas; +Cc: poky, Tom Rini On 2/11/11 12:24 PM, Gary Thomas wrote: > On 02/11/2011 10:41 AM, Tom Rini wrote: >> On 02/11/2011 09:53 AM, Gary Thomas wrote: >>> A build for my platform with today's master >>> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 >>> shows a new behaviour - many messages like this: >>> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox >>> >>> Questions: >>> * Is this truly new or was it just quiet before? >>> * Can't this be done at image build time? On my little >>> embedded OMAP-L138, it takes nearly 2 minutes to run >>> through this. My root is a ramdisk, so this is a cost >>> I see on _every_ boot. >>> * If it can't be done at build time, can I disable it? >> >> It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides >> foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the >> conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the >> recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). > > Running the postinst script manually, I get this error: > > + update-rc.d -s syslog busybox-udhcpc defaults > usage: update-rc.d [-n] [-f] [-r <root>] <basename> remove > update-rc.d [-n] [-r <root>] [-s] <basename> defaults [NN | sNN kNN] > update-rc.d [-n] [-r <root>] [-s] <basename> start|stop NN runlvl [runlvl] [...] . > -n: not really > -f: force > -v: verbose > -r: alternate root path (default is /) > -s: invoke start methods if appropriate to current runlevel > > Looks like update-rc.d is not being called properly. This > was introduced by > commit 427472e980cd6254a5e4ef37209b327e15af259b > Author: Mark Hatle <mark.hatle@windriver.com> > Date: Thu Feb 3 19:29:50 2011 -0600 > > Mark, any comments? > The error is coming from the INITSCRIPT_NAME_${PN} change. However, I don't know how to resolve it. Where there was previously only one init script, there are now two. So how do we inform bitbake that there are two initscripts to be processed? (If specifying more then one initscript is correct in the recipe, then the bug is in a class wherever update-rc.d is called.) --Mark ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 18:30 ` Mark Hatle @ 2011-02-11 18:37 ` Mark Hatle 2011-02-11 18:51 ` Koen Kooi 2011-02-11 19:22 ` Gary Thomas 2011-02-12 6:05 ` Khem Raj 1 sibling, 2 replies; 10+ messages in thread From: Mark Hatle @ 2011-02-11 18:37 UTC (permalink / raw) To: poky On 2/11/11 12:30 PM, Mark Hatle wrote: > On 2/11/11 12:24 PM, Gary Thomas wrote: >> On 02/11/2011 10:41 AM, Tom Rini wrote: >>> On 02/11/2011 09:53 AM, Gary Thomas wrote: >>>> A build for my platform with today's master >>>> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 >>>> shows a new behaviour - many messages like this: >>>> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox >>>> >>>> Questions: >>>> * Is this truly new or was it just quiet before? >>>> * Can't this be done at image build time? On my little >>>> embedded OMAP-L138, it takes nearly 2 minutes to run >>>> through this. My root is a ramdisk, so this is a cost >>>> I see on _every_ boot. >>>> * If it can't be done at build time, can I disable it? >>> >>> It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides >>> foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the >>> conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the >>> recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). >> >> Running the postinst script manually, I get this error: >> >> + update-rc.d -s syslog busybox-udhcpc defaults >> usage: update-rc.d [-n] [-f] [-r <root>] <basename> remove >> update-rc.d [-n] [-r <root>] [-s] <basename> defaults [NN | sNN kNN] >> update-rc.d [-n] [-r <root>] [-s] <basename> start|stop NN runlvl [runlvl] [...] . >> -n: not really >> -f: force >> -v: verbose >> -r: alternate root path (default is /) >> -s: invoke start methods if appropriate to current runlevel >> >> Looks like update-rc.d is not being called properly. This >> was introduced by >> commit 427472e980cd6254a5e4ef37209b327e15af259b >> Author: Mark Hatle <mark.hatle@windriver.com> >> Date: Thu Feb 3 19:29:50 2011 -0600 >> >> Mark, any comments? >> > > The error is coming from the INITSCRIPT_NAME_${PN} change. However, I don't > know how to resolve it. Where there was previously only one init script, there > are now two. So how do we inform bitbake that there are two initscripts to be > processed? I asked and it appears there is a limitation of one initscript per split package. So as a workaround, I suggest removing the busybox-udhcpc from the INITSCRIPTS_NAME_${PN} line.. --Mark > (If specifying more then one initscript is correct in the recipe, then the bug > is in a class wherever update-rc.d is called.) > > --Mark > _______________________________________________ > poky mailing list > poky@yoctoproject.org > https://lists.yoctoproject.org/listinfo/poky ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 18:37 ` Mark Hatle @ 2011-02-11 18:51 ` Koen Kooi 2011-02-11 19:22 ` Gary Thomas 1 sibling, 0 replies; 10+ messages in thread From: Koen Kooi @ 2011-02-11 18:51 UTC (permalink / raw) To: Mark Hatle; +Cc: poky Op 11 feb 2011, om 19:37 heeft Mark Hatle het volgende geschreven: > On 2/11/11 12:30 PM, Mark Hatle wrote: >> On 2/11/11 12:24 PM, Gary Thomas wrote: >>> On 02/11/2011 10:41 AM, Tom Rini wrote: >>>> On 02/11/2011 09:53 AM, Gary Thomas wrote: >>>>> A build for my platform with today's master >>>>> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 >>>>> shows a new behaviour - many messages like this: >>>>> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox >>>>> >>>>> Questions: >>>>> * Is this truly new or was it just quiet before? >>>>> * Can't this be done at image build time? On my little >>>>> embedded OMAP-L138, it takes nearly 2 minutes to run >>>>> through this. My root is a ramdisk, so this is a cost >>>>> I see on _every_ boot. >>>>> * If it can't be done at build time, can I disable it? >>>> >>>> It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides >>>> foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the >>>> conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the >>>> recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). >>> >>> Running the postinst script manually, I get this error: >>> >>> + update-rc.d -s syslog busybox-udhcpc defaults >>> usage: update-rc.d [-n] [-f] [-r <root>] <basename> remove >>> update-rc.d [-n] [-r <root>] [-s] <basename> defaults [NN | sNN kNN] >>> update-rc.d [-n] [-r <root>] [-s] <basename> start|stop NN runlvl [runlvl] [...] . >>> -n: not really >>> -f: force >>> -v: verbose >>> -r: alternate root path (default is /) >>> -s: invoke start methods if appropriate to current runlevel >>> >>> Looks like update-rc.d is not being called properly. This >>> was introduced by >>> commit 427472e980cd6254a5e4ef37209b327e15af259b >>> Author: Mark Hatle <mark.hatle@windriver.com> >>> Date: Thu Feb 3 19:29:50 2011 -0600 >>> >>> Mark, any comments? >>> >> >> The error is coming from the INITSCRIPT_NAME_${PN} change. However, I don't >> know how to resolve it. Where there was previously only one init script, there >> are now two. So how do we inform bitbake that there are two initscripts to be >> processed? > > I asked and it appears there is a limitation of one initscript per split > package. So as a workaround, I suggest removing the busybox-udhcpc from the > INITSCRIPTS_NAME_${PN} line.. If you use update-rc.bbclass, yes. But that class is only a few lines, easy enough to copy it into the recipe and do multiple initscripts. There are a number of recipes in OE doing that. regards, Koen ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 18:37 ` Mark Hatle 2011-02-11 18:51 ` Koen Kooi @ 2011-02-11 19:22 ` Gary Thomas 2011-02-11 19:46 ` Mark Hatle 1 sibling, 1 reply; 10+ messages in thread From: Gary Thomas @ 2011-02-11 19:22 UTC (permalink / raw) To: Mark Hatle; +Cc: poky [-- Attachment #1: Type: text/plain, Size: 3303 bytes --] On 02/11/2011 11:37 AM, Mark Hatle wrote: > On 2/11/11 12:30 PM, Mark Hatle wrote: >> On 2/11/11 12:24 PM, Gary Thomas wrote: >>> On 02/11/2011 10:41 AM, Tom Rini wrote: >>>> On 02/11/2011 09:53 AM, Gary Thomas wrote: >>>>> A build for my platform with today's master >>>>> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 >>>>> shows a new behaviour - many messages like this: >>>>> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox >>>>> >>>>> Questions: >>>>> * Is this truly new or was it just quiet before? >>>>> * Can't this be done at image build time? On my little >>>>> embedded OMAP-L138, it takes nearly 2 minutes to run >>>>> through this. My root is a ramdisk, so this is a cost >>>>> I see on _every_ boot. >>>>> * If it can't be done at build time, can I disable it? >>>> >>>> It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides >>>> foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the >>>> conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the >>>> recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). >>> >>> Running the postinst script manually, I get this error: >>> >>> + update-rc.d -s syslog busybox-udhcpc defaults >>> usage: update-rc.d [-n] [-f] [-r<root>]<basename> remove >>> update-rc.d [-n] [-r<root>] [-s]<basename> defaults [NN | sNN kNN] >>> update-rc.d [-n] [-r<root>] [-s]<basename> start|stop NN runlvl [runlvl] [...] . >>> -n: not really >>> -f: force >>> -v: verbose >>> -r: alternate root path (default is /) >>> -s: invoke start methods if appropriate to current runlevel >>> >>> Looks like update-rc.d is not being called properly. This >>> was introduced by >>> commit 427472e980cd6254a5e4ef37209b327e15af259b >>> Author: Mark Hatle<mark.hatle@windriver.com> >>> Date: Thu Feb 3 19:29:50 2011 -0600 >>> >>> Mark, any comments? >>> >> >> The error is coming from the INITSCRIPT_NAME_${PN} change. However, I don't >> know how to resolve it. Where there was previously only one init script, there >> are now two. So how do we inform bitbake that there are two initscripts to be >> processed? > > I asked and it appears there is a limitation of one initscript per split > package. So as a workaround, I suggest removing the busybox-udhcpc from the > INITSCRIPTS_NAME_${PN} line.. The attached patch looks like it does the right thing. Any reason it's not the way to fix this? > > --Mark > >> (If specifying more then one initscript is correct in the recipe, then the bug >> is in a class wherever update-rc.d is called.) -- ------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------ [-- Attachment #2: update.patch --] [-- Type: text/plain, Size: 736 bytes --] diff --git a/meta/classes/update-rc.d.bbclass b/meta/classes/update-rc.d.bbclass index 7e4dda7..3647cb4 100644 --- a/meta/classes/update-rc.d.bbclass +++ b/meta/classes/update-rc.d.bbclass @@ -15,17 +15,23 @@ if test "x$D" != "x"; then else OPT="-s" fi -update-rc.d $OPT ${INITSCRIPT_NAME} ${INITSCRIPT_PARAMS} +for i in ${INITSCRIPT_NAME}; do + update-rc.d $OPT $i ${INITSCRIPT_PARAMS} +done } updatercd_prerm() { if test "x$D" = "x"; then - ${INIT_D_DIR}/${INITSCRIPT_NAME} stop + for i in ${INITSCRIPT_NAME}; do + ${INIT_D_DIR}/$i stop + done fi } updatercd_postrm() { -update-rc.d $D ${INITSCRIPT_NAME} remove +for i in ${INITSCRIPT_NAME}; do + update-rc.d $D $i remove +done } ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 19:22 ` Gary Thomas @ 2011-02-11 19:46 ` Mark Hatle 2011-02-11 19:50 ` Gary Thomas 0 siblings, 1 reply; 10+ messages in thread From: Mark Hatle @ 2011-02-11 19:46 UTC (permalink / raw) To: Gary Thomas; +Cc: poky On 2/11/11 1:22 PM, Gary Thomas wrote: > On 02/11/2011 11:37 AM, Mark Hatle wrote: >> On 2/11/11 12:30 PM, Mark Hatle wrote: >>> On 2/11/11 12:24 PM, Gary Thomas wrote: >>>> On 02/11/2011 10:41 AM, Tom Rini wrote: >>>>> On 02/11/2011 09:53 AM, Gary Thomas wrote: >>>>>> A build for my platform with today's master >>>>>> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 >>>>>> shows a new behaviour - many messages like this: >>>>>> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox >>>>>> >>>>>> Questions: >>>>>> * Is this truly new or was it just quiet before? >>>>>> * Can't this be done at image build time? On my little >>>>>> embedded OMAP-L138, it takes nearly 2 minutes to run >>>>>> through this. My root is a ramdisk, so this is a cost >>>>>> I see on _every_ boot. >>>>>> * If it can't be done at build time, can I disable it? >>>>> >>>>> It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides >>>>> foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the >>>>> conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the >>>>> recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). >>>> >>>> Running the postinst script manually, I get this error: >>>> >>>> + update-rc.d -s syslog busybox-udhcpc defaults >>>> usage: update-rc.d [-n] [-f] [-r<root>]<basename> remove >>>> update-rc.d [-n] [-r<root>] [-s]<basename> defaults [NN | sNN kNN] >>>> update-rc.d [-n] [-r<root>] [-s]<basename> start|stop NN runlvl [runlvl] [...] . >>>> -n: not really >>>> -f: force >>>> -v: verbose >>>> -r: alternate root path (default is /) >>>> -s: invoke start methods if appropriate to current runlevel >>>> >>>> Looks like update-rc.d is not being called properly. This >>>> was introduced by >>>> commit 427472e980cd6254a5e4ef37209b327e15af259b >>>> Author: Mark Hatle<mark.hatle@windriver.com> >>>> Date: Thu Feb 3 19:29:50 2011 -0600 >>>> >>>> Mark, any comments? >>>> >>> >>> The error is coming from the INITSCRIPT_NAME_${PN} change. However, I don't >>> know how to resolve it. Where there was previously only one init script, there >>> are now two. So how do we inform bitbake that there are two initscripts to be >>> processed? >> >> I asked and it appears there is a limitation of one initscript per split >> package. So as a workaround, I suggest removing the busybox-udhcpc from the >> INITSCRIPTS_NAME_${PN} line.. > > The attached patch looks like it does the right thing. Any reason it's not > the way to fix this? That patch should work fine. Only concern is if you have multiple initscripts with different params.. how do you reconcile that. (Simplest answer for me would be ${INITSCRIPT_PARAMS_name} --- but I'm guessing that might clash with the package names and cause other problems. I'm exploring adding a -sysroot as well as -udhcpc split package. But so far I'm not having much success getting the semantics right.... >> >> --Mark >> >>> (If specifying more then one initscript is correct in the recipe, then the bug >>> is in a class wherever update-rc.d is called.) > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 19:46 ` Mark Hatle @ 2011-02-11 19:50 ` Gary Thomas 0 siblings, 0 replies; 10+ messages in thread From: Gary Thomas @ 2011-02-11 19:50 UTC (permalink / raw) To: Mark Hatle; +Cc: poky On 02/11/2011 12:46 PM, Mark Hatle wrote: > On 2/11/11 1:22 PM, Gary Thomas wrote: >> On 02/11/2011 11:37 AM, Mark Hatle wrote: >>> On 2/11/11 12:30 PM, Mark Hatle wrote: >>>> On 2/11/11 12:24 PM, Gary Thomas wrote: >>>>> On 02/11/2011 10:41 AM, Tom Rini wrote: >>>>>> On 02/11/2011 09:53 AM, Gary Thomas wrote: >>>>>>> A build for my platform with today's master >>>>>>> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 >>>>>>> shows a new behaviour - many messages like this: >>>>>>> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox >>>>>>> >>>>>>> Questions: >>>>>>> * Is this truly new or was it just quiet before? >>>>>>> * Can't this be done at image build time? On my little >>>>>>> embedded OMAP-L138, it takes nearly 2 minutes to run >>>>>>> through this. My root is a ramdisk, so this is a cost >>>>>>> I see on _every_ boot. >>>>>>> * If it can't be done at build time, can I disable it? >>>>>> >>>>>> It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides >>>>>> foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the >>>>>> conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the >>>>>> recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). >>>>> >>>>> Running the postinst script manually, I get this error: >>>>> >>>>> + update-rc.d -s syslog busybox-udhcpc defaults >>>>> usage: update-rc.d [-n] [-f] [-r<root>]<basename> remove >>>>> update-rc.d [-n] [-r<root>] [-s]<basename> defaults [NN | sNN kNN] >>>>> update-rc.d [-n] [-r<root>] [-s]<basename> start|stop NN runlvl [runlvl] [...] . >>>>> -n: not really >>>>> -f: force >>>>> -v: verbose >>>>> -r: alternate root path (default is /) >>>>> -s: invoke start methods if appropriate to current runlevel >>>>> >>>>> Looks like update-rc.d is not being called properly. This >>>>> was introduced by >>>>> commit 427472e980cd6254a5e4ef37209b327e15af259b >>>>> Author: Mark Hatle<mark.hatle@windriver.com> >>>>> Date: Thu Feb 3 19:29:50 2011 -0600 >>>>> >>>>> Mark, any comments? >>>>> >>>> >>>> The error is coming from the INITSCRIPT_NAME_${PN} change. However, I don't >>>> know how to resolve it. Where there was previously only one init script, there >>>> are now two. So how do we inform bitbake that there are two initscripts to be >>>> processed? >>> >>> I asked and it appears there is a limitation of one initscript per split >>> package. So as a workaround, I suggest removing the busybox-udhcpc from the >>> INITSCRIPTS_NAME_${PN} line.. >> >> The attached patch looks like it does the right thing. Any reason it's not >> the way to fix this? > > That patch should work fine. Only concern is if you have multiple initscripts > with different params.. how do you reconcile that. (Simplest answer for me > would be ${INITSCRIPT_PARAMS_name} --- but I'm guessing that might clash with > the package names and cause other problems. > > I'm exploring adding a -sysroot as well as -udhcpc split package. But so far > I'm not having much success getting the semantics right.... Since you're working on this, I'll leave the final solution to you :-) I have a [temporary] solution for now. Thanks >>> >>> --Mark >>> >>>> (If specifying more then one initscript is correct in the recipe, then the bug >>>> is in a class wherever update-rc.d is called.) >> -- ------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------ ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: busybox & update-alternatives 2011-02-11 18:30 ` Mark Hatle 2011-02-11 18:37 ` Mark Hatle @ 2011-02-12 6:05 ` Khem Raj 1 sibling, 0 replies; 10+ messages in thread From: Khem Raj @ 2011-02-12 6:05 UTC (permalink / raw) To: Mark Hatle; +Cc: poky, Tom Rini On (11/02/11 12:30), Mark Hatle wrote: > On 2/11/11 12:24 PM, Gary Thomas wrote: > > On 02/11/2011 10:41 AM, Tom Rini wrote: > >> On 02/11/2011 09:53 AM, Gary Thomas wrote: > >>> A build for my platform with today's master > >>> 49a18f1748d2417958b8e19cdd58c0c79f4fc728 > >>> shows a new behaviour - many messages like this: > >>> update-alternatives: Linking //usr/bin/wc to ../../bin/busybox > >>> > >>> Questions: > >>> * Is this truly new or was it just quiet before? > >>> * Can't this be done at image build time? On my little > >>> embedded OMAP-L138, it takes nearly 2 minutes to run > >>> through this. My root is a ramdisk, so this is a cost > >>> I see on _every_ boot. > >>> * If it can't be done at build time, can I disable it? > >> > >> It can be done at build time _except_ for when there's a conflict. I suspect what's going on is that a recent change has introduced a conflict (which is to say, busybox provides > >> foo as an alternative and something else also provides it, but isn't registering it as an alternative). If you check the whole boot log (or log.do_rootfs) you can find where the > >> conflict is and then do something like http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=902b98f32ffd35661e43382f47226f65528ff1b1 (it's a little more complicated if the > >> recipe also does BBCLASSEXTEND, since you don't want to do the move for virtclass-foo). > > > > Running the postinst script manually, I get this error: > > > > + update-rc.d -s syslog busybox-udhcpc defaults > > usage: update-rc.d [-n] [-f] [-r <root>] <basename> remove > > update-rc.d [-n] [-r <root>] [-s] <basename> defaults [NN | sNN kNN] > > update-rc.d [-n] [-r <root>] [-s] <basename> start|stop NN runlvl [runlvl] [...] . > > -n: not really > > -f: force > > -v: verbose > > -r: alternate root path (default is /) > > -s: invoke start methods if appropriate to current runlevel > > > > Looks like update-rc.d is not being called properly. This > > was introduced by > > commit 427472e980cd6254a5e4ef37209b327e15af259b > > Author: Mark Hatle <mark.hatle@windriver.com> > > Date: Thu Feb 3 19:29:50 2011 -0600 > > > > Mark, any comments? > > > > The error is coming from the INITSCRIPT_NAME_${PN} change. However, I don't > know how to resolve it. Where there was previously only one init script, there > are now two. So how do we inform bitbake that there are two initscripts to be > processed? customize update-rc.d class functionality in recipe > > (If specifying more then one initscript is correct in the recipe, then the bug > is in a class wherever update-rc.d is called.) > > --Mark > _______________________________________________ > poky mailing list > poky@yoctoproject.org > https://lists.yoctoproject.org/listinfo/poky ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2011-02-12 6:05 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-02-11 16:53 busybox & update-alternatives Gary Thomas 2011-02-11 17:41 ` Tom Rini 2011-02-11 18:24 ` Gary Thomas 2011-02-11 18:30 ` Mark Hatle 2011-02-11 18:37 ` Mark Hatle 2011-02-11 18:51 ` Koen Kooi 2011-02-11 19:22 ` Gary Thomas 2011-02-11 19:46 ` Mark Hatle 2011-02-11 19:50 ` Gary Thomas 2011-02-12 6:05 ` Khem Raj
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.