[oe] Broken kernel module dependencies

Filip Zyzniewski filip.zyzniewski at gmail.com
Thu Feb 17 19:08:24 UTC 2011


Hi,

lately I have noticed that the bootstrap image I build contains the
orinoco-cs.ko kernel module, but doesn't contain orinoco.ko (which is
depended on by orinoco-cs.ko).

The problem is that package has only these dependencies:
update-modules, kernel-2.6.34

AFAIK dependencies between modules are retrieved by parse_depmod()
from kernel.bbclass.

Here it returns things like:

{ 'kernel/drivers/net/wireless/orinoco/orinoco_cs.ko':
  ['kernel/drivers/net/wireless/orinoco/orinoco.ko',
    'kernel/net/wireless/cfg80211.ko'],
}

It is later used by get_dependencies() in the same file.
This function does something like this:

file = file.replace(bb.data.getVar('PKGD', d, 1) or '', '', 1)
if module_deps.has_key(file):
[...]

File value in my case (after replacing) is:
/lib/modules/2.6.34/kernel/drivers/net/wireless/orinoco/orinoco_cs.ko

Of course  'kernel/drivers/net/wireless/orinoco/orinoco_cs.ko' !=
'/lib/modules/2.6.34/kernel/drivers/net/wireless/orinoco/orinoco_cs.ko'
which causes my problem.

What can be done to fix this? How did it get broken (last week or so)?

bye,
Filip Zyzniewski




More information about the Openembedded-devel mailing list