mirror of
https://git.yoctoproject.org/poky
synced 2026-01-29 21:08:42 +01:00
rootfs.py: Add check for kernel modules before running depmod
Add a check for kernel modules so we don't un-necessarily run the depmods, this will also handle the case with linux-dummy does not place the kernel-abiversion since it also does not have kernel modules. [YOCTO #7884] (From OE-Core rev: 1b696a45ddb00fbe1d993b19339071486d0cfef2) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
7e074c3641
commit
38d8f2eb9f
@@ -304,16 +304,30 @@ class Rootfs(object):
|
||||
self._exec_shell_cmd(['ldconfig', '-r', self.image_rootfs, '-c',
|
||||
'new', '-v'])
|
||||
|
||||
def _check_for_kernel_modules(self, modules_dir):
|
||||
for root, dirs, files in os.walk(modules_dir, topdown=True):
|
||||
for name in files:
|
||||
found_ko = name.endswith(".ko")
|
||||
if found_ko:
|
||||
return found_ko
|
||||
return False
|
||||
|
||||
def _generate_kernel_module_deps(self):
|
||||
modules_dir = os.path.join(self.image_rootfs, 'lib', 'modules')
|
||||
# if we don't have any modules don't bother to do the depmod
|
||||
if not self._check_for_kernel_modules(modules_dir):
|
||||
bb.note("No Kernel Modules found, not running depmod")
|
||||
return
|
||||
|
||||
kernel_abi_ver_file = oe.path.join(self.d.getVar('PKGDATA_DIR', True), "kernel-depmod",
|
||||
'kernel-abiversion')
|
||||
if not os.path.exists(kernel_abi_ver_file):
|
||||
bb.fatal("No kernel-abiversion file found (%s), cannot run depmod, aborting" % kernel_abi_ver_file)
|
||||
|
||||
kernel_ver = open(kernel_abi_ver_file).read().strip(' \n')
|
||||
modules_dir = os.path.join(self.image_rootfs, 'lib', 'modules', kernel_ver)
|
||||
versioned_modules_dir = os.path.join(self.image_rootfs, modules_dir, kernel_ver)
|
||||
|
||||
bb.utils.mkdirhier(modules_dir)
|
||||
bb.utils.mkdirhier(versioned_modules_dir)
|
||||
|
||||
self._exec_shell_cmd(['depmodwrapper', '-a', '-b', self.image_rootfs, kernel_ver])
|
||||
|
||||
|
||||
Reference in New Issue
Block a user