On 7/6/21 3:12 PM, Richard Purdie wrote:
Kernel modules can be:
a) not built at all
b) built into the kernel3
c) built as separate packages
For OE, where something needs a kernel module, we suggest people:
RRECOMMEND_XXX += "kernel-module-xxx"
and the kernel recipe has PACKAGES_DYNAMIC = "kernel-module-*".
From bitbake's perspective, it builds the kernel (since the PACKAGES_DYNAMIC
covers kernel-modules-xxx) and then hands off to the package manager.
In the case it was built in, the Recommends will be passed over by the
package manager since it is just a suggestion. If the module is present,
it would be included in the image.
The issue as described is that if someone has IMAGE_INSTALL containing
kernel-module-xxx *and* some other package in the image RRECOMMENDS that
module, it doesn't error if the package doesn't exist.
I have to admit I don't remember how IMAGE_INSTALL is being passed into
opkg but the change in behaviour due to the addition of a RRECOMMENDS does
not sound right to me. The rpm backend does not do that but errors
consistently.
Yep; I understand all of that and agree. My goal here is just to make
sure that the bug is filed to the correct location. As it stands, the
only description of the error is from OE's perspective, and I'd like to
get some understanding of the interface between OE and opkg, for this
special case.
It sounds like the "Depends" from IMAGE_INSTALL is somehow being overruled
by the Recommends from some sub package dependency.
I know that IMAGE_INSTALL gets consumed into PACKAGE_INSTALL, which gets
pass off to the PM modules (iirc.) And I also recall there being a
PACKAGE_INSTALL_ATTEMPTONLY variable[1]. I wonder if RRECOMMENDS are
being ATTEMPTed (either through that variable, or a similar one), and
the failed attempt is pre-empting the mandatory install attempt. Worth
looking into.
[1]
https://git.openembedded.org/openembedded-core/tree/meta/classes/image.bbclass#n79
If we're driving opkg incorrectly, we should fix that but I'm not sure
where the issue is, I suspect opkg...
Why do you suspect opkg? The situation from its perspective is only that
`kernel-module-xxx` is recommended by another package, but not available
in the feeds. There's nothing invalid about that state that would cause
opkg to throw an error.
Thanks,
--
Alex Stewart
Software Engineer - NI Real-Time OS
NI (National Instruments)
alex.stew...@ni.com
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#153626):
https://lists.openembedded.org/g/openembedded-core/message/153626
Mute This Topic: https://lists.openembedded.org/mt/83779506/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-