Boot errors after building a custom kernel

Hello.
First, I assembled a reference image, then I decided to try to assemble the kernel myself according to the instructions (Build Linux Kernel from Source Code | Toradex Developer Center). With the help of the “bitbake -e virtual/kernel | grep ^WORKDIR” command, I found out the path to the folder with the source codes and the config file, which I took as a basis. All I changed in the config file was CONFIG_LOCALVERSION=“-6.5.0-testbuild”. I successfully compiled the kernel and modules and replaced the corresponding files in the reference image archive. The installation went without problems, but the first download has errors, the reason of which I still cannot understand, I am attaching the serial port log:

U-Boot 2022.07-6.5.0-devel+git.e092e3250270 (Jul 11 2022 - 13:42:58 +0000)

CPU: Freescale i.MX6Q rev1.6 at 792MHz
CPU: Industrial temperature grade (-40C to 105C) at 22C
Reset cause: POR
DRAM: 2 GiB
PMIC: device id: 0x10, revision id: 0x21, programmed
Core: 112 devices, 18 uclasses, devicetree: separate
MMC: FSL_SDHC: 1, FSL_SDHC: 2, FSL_SDHC: 0
Loading Environment from MMC… OK
In: serial@2020000
Out: serial@2020000
Err: serial@2020000
Model: Toradex 0028 Apalis iMX6Q 2GB IT V1.1D
Serial#: 11274726
Net: eth0: ethernet@2188000
Hit any key to stop autoboot: 0
MMC: no card present
MMC: no card present
switch to partitions #0, OK
mmc0(part 0) is current device
Scanning mmc 0:1…
Found U-Boot script /boot.scr
5998 bytes read in 2 ms (2.9 MiB/s)

Executing script at 18280000

Loading DeviceTree: imx6q-apalis-eval.dtb
68476 bytes read in 3 ms (21.8 MiB/s)
61 bytes read in 2 ms (29.3 KiB/s)
Applying Overlay: apalis-imx6_panel-cap-touch-10inch_overlay.dtbo
1420 bytes read in 17 ms (81.1 KiB/s)
9523896 bytes read in 263 ms (34.5 MiB/s)
Bootargs: enable_wait_mode=off vmalloc=400M root=PARTUUID=2dfb8609-02 ro rootwait fec_mac=00:14:2d:ac:09:e6 consoleblank=0 no_console_suspend=1 console=tty1 console=ttymxc0,115200n8 mxc_hdmM
Kernel image @ 0x14200000 [ 0x000000 - 0x9152b8 ]

Flattened Device Tree blob at 18200000

Booting using the fdt blob at 0x18200000
Loading Device Tree to 2ffcc000, end 2fffffff … OK

Starting kernel …

[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 6.1.71-6.5.0-testbuild+git.38fb82ecd144 (sii@sii-PC) (arm-none-linux-gnueabihf-gcc (Arm GNU Toolchain 12.3.Rel1 (Build arm-12.35)) 12.3.1 20230626, GNU ld (Arm GNU4
[ 0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt: Machine model: Toradex Apalis iMX6Q/D Module on Apalis Evaluation Board
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] cma: Reserved 256 MiB at 0x80000000
[ 0.000000] Zone ranges:
[ 0.000000] Normal [mem 0x0000000010000000-0x0000000035ffffff]
[ 0.000000] HighMem [mem 0x0000000036000000-0x000000008fffffff]
[ 0.000000] Movable zone start for each node
[ 0.000000] Early memory node ranges
[ 0.000000] node 0: [mem 0x0000000010000000-0x000000008fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000010000000-0x000000008fffffff]
[ 0.000000] percpu: Embedded 12 pages/cpu s18836 r8192 d22124 u49152
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 523072
[ 0.000000] Kernel command line: enable_wait_mode=off vmalloc=400M root=PARTUUID=2dfb8609-02 ro rootwait fec_mac=00:14:2d:ac:09:e6 consoleblank=0 no_console_suspend=1 console=tty1 consolM
[ 0.000000] Unknown kernel command line parameters “enable_wait_mode=off fec_mac=00:14:2d:ac:09:e6 fbmem=32M”, will be passed to user space.

Welcome to TDX Wayland with XWayland Upstream 6.5.0-devel-20240118094319+build.0 (kirkstone)!

[ 3.795241] systemd[1]: No hostname configured, using default hostname.
[ 3.809131] systemd[1]: Hostname set to .
[ 3.825133] usb 1-1: New USB device found, idVendor=0424, idProduct=2514, bcdDevice= b.b3
[ 3.826814] systemd[1]: Initializing machine ID from random generator.
[ 3.833333] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 3.840149] hub 1-1:1.0: USB hub found
[ 3.843472] systemd[1]: Installed transient /etc/machine-id file.
[ 3.854285] hub 1-1:1.0: 4 ports detected
[ 3.883425] fsl-ssi-dai 2028000.ssi: No cache defaults, reading back from HW
[ 3.896898] fsl-ssi-dai 2028000.ssi: No cache defaults, reading back from HW
[ 4.194689] usb 1-1.1: new high-speed USB device number 3 using ci_hdrc
[ 4.355134] usb 1-1.1: New USB device found, idVendor=0424, idProduct=2514, bcdDevice= b.b3
[ 4.366754] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 4.377943] hub 1-1.1:1.0: USB hub found
[ 4.385258] hub 1-1.1:1.0: 4 ports detected
[ 4.395529] fsl-ssi-dai 2028000.ssi: No cache defaults, reading back from HW
[ 4.408918] fsl-ssi-dai 2028000.ssi: No cache defaults, reading back from HW
[ 4.650740] systemd[1]: Queued start job for default target Graphical Interface.
[ 4.758922] systemd[1]: Created slice Slice /system/getty.
[ OK ] Created slice Slice /system/getty.
[ 4.798135] systemd[1]: Created slice Slice /system/modprobe.
[ OK ] Created slice Slice /system/modprobe.
[ 4.848397] systemd[1]: Created slice Slice /system/serial-getty.
[ OK ] Created slice Slice /system/serial-getty.
[ 4.896900] systemd[1]: Created slice User and Session Slice.
[ OK ] Created slice User and Session Slice.
[ 4.935199] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[ OK ] Started Dispatch Password …ts to Console Directory Watch.
[ 4.975650] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[ OK ] Started Forward Password R…uests to Wall Directory Watch.
[ 5.026302] systemd[1]: Reached target Host and Network Name Lookups.
[ OK ] Reached target Host and Network Name Lookups.
[ 5.064895] systemd[1]: Reached target Path Units.
[ OK ] Reached target Path Units.
[ 5.105211] systemd[1]: Reached target Remote File Systems.
[ OK ] Reached target Remote File Systems.
[ 5.145184] systemd[1]: Reached target Slice Units.
[ OK ] Reached target Slice Units.
[ 5.185015] systemd[1]: Reached target Swaps.
[ OK ] Reached target Swaps.
[ 5.358433] systemd[1]: Listening on RPCbind Server Activation Socket.
[ OK ] Listening on RPCbind Server Activation Socket.
[ 5.405397] systemd[1]: Reached target RPC Port Mapper.
[ OK ] Reached target RPC Port Mapper.
[ 5.446587] systemd[1]: Listening on Syslog Socket.
[ OK ] Listening on Syslog Socket.
[ 5.485353] systemd[1]: Listening on initctl Compatibility Named Pipe.
[ OK ] Listening on initctl Compatibility Named Pipe.
[ 5.537392] systemd[1]: Journal Audit Socket was skipped because of a failed condition check (ConditionSecurity=audit).
[ 5.555382] systemd[1]: Listening on Journal Socket (/dev/log).
[ OK ] Listening on Journal Socket (/dev/log).
[ 5.596431] systemd[1]: Listening on Journal Socket.
[ OK ] Listening on Journal Socket.
[ 5.636870] systemd[1]: Listening on Network Service Netlink Socket.
[ OK ] Listening on Network Service Netlink Socket.
[ 5.675723] systemd[1]: Listening on udev Control Socket.
[ OK ] Listening on udev Control Socket.
[ 5.716128] systemd[1]: Listening on udev Kernel Socket.
[ OK ] Listening on udev Kernel Socket.
[ 5.756296] systemd[1]: Listening on User Database Manager Socket.
[ OK ] Listening on User Database Manager Socket.
[ 5.795678] systemd[1]: Huge Pages File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/mm/hugepages).
[ 5.812604] systemd[1]: POSIX Message Queue File System was skipped because of a failed condition check (ConditionPathExists=/proc/sys/fs/mqueue).
[ 5.885878] systemd[1]: Mounting Kernel Debug File System…
Mounting Kernel Debug File System…
[ 5.925408] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
[ 5.953346] systemd[1]: Mounting Temporary Directory /tmp…
Mounting Temporary Directory /tmp…
[ 6.006769] systemd[1]: Starting Create List of Static Device Nodes…
Starting Create List of Static Device Nodes…
[ 6.064932] systemd[1]: Starting Load Kernel Module configfs…
Starting Load Kernel Module configfs…
[ 6.114540] systemd[1]: Starting Load Kernel Module drm…
Starting Load Kernel Module drm…
[ 6.165038] systemd[1]: Starting Load Kernel Module fuse…
Starting Load Kernel Module fuse…
[ 6.195235] fuse: init (API version 7.37)
[ 6.211543] systemd[1]: Starting RPC Bind…
Starting RPC Bind…
[ 6.250093] systemd[1]: Starting File System Check on Root Device…
Starting File System Check on Root Device…
[ 6.304362] systemd[1]: Starting Journal Service…
Starting Journal Service…
[ 6.320632] systemd[1]: Load Kernel Modules was skipped because all trigger condition checks failed.
[ 6.340308] systemd[1]: Starting Generate network units from Kernel command line…
Starting Generate network …ts from Kernel command line…
[ 6.359573] systemd[1]: Starting Apply Kernel Variables…
Starting Apply Kernel Variables…
[ 6.379718] systemd[1]: Starting Coldplug All udev Devices…
Starting Coldplug All udev Devices…
[ 6.402110] systemd[1]: Started RPC Bind.
[ OK ] Started 6.410986] systemd[1]: sys-kernel-debug.mount: Mount process exited, code=exited, status=32/n/a
;39mRPC Bind.
[ 6.423887] systemd[1]: sys-kernel-debug.mount: Failed with result ‘exit-code’.
[ 6.435402] systemd[1]: Failed to mount Kernel Debug File System.
[FAILED] Failed to m[ 6.446721] systemd[1]: tmp.mount: Mount process exited, code=exited, status=32/n/a
ount Kernel Debug File System.
See ‘systemctl status[ 6.458742] systemd[1]: tmp.mount: Failed with result ‘exit-code’.
sys-kernel-debug.mount’ for details.
[ 6.472416] systemd[1]: Failed to mount Temporary Directory /tmp.
[FAILED] Failed to m[ 6.483656] systemd[1]: Finished Create List of Static Device Nodes.
ount Temporary Directory /tmp.
See ‘systemctl status tmp.mount’ for details.
[ OK ] Finished Create List of Static Device Nodes.
[ 6.566990] systemd[1]: modprobe@configfs.service: Deactivated successfully.
[ 6.577860] systemd[1]: Finished Load Kernel Module configfs.
[ OK ] Finished Load Kernel Module configfs.
[ 6.616829] systemd[1]: modprobe@drm.service: Deactivated successfully.
[ 6.627052] systemd[1]: Finished Load Kernel Module drm.
[ OK ] Finished Load Kernel Module drm.
[ 6.666527] systemd[1]: modprobe@fuse.service: Deactivated successfully.
[ 6.676888] systemd[1]: Finished Load Kernel Module fuse.
[ OK ] Finished Load Kernel Module fuse.
[ 6.716274] systemd[1]: Finished File System Check on Root Device.
[ OK ] Finished File System Check on Root Device.
[ 6.756309] systemd[1]: Finished Generate network units from Kernel command line.
[ OK ] Finished Generate network units from Kernel command line.
[ 6.796274] systemd[1]: Started Journal Service.
[ OK ] Started Journal Service.
[ OK ] Finished Apply Kernel Variables.
Mounting FUSE Control File System…
Mounting Kernel Configuration File System…
Starting Remount Root and Kernel File Systems…
[FAILED] Failed to mount FUSE Control File System.
See ‘systemctl status sys-fs-fuse-connections.mount’ for details.
[FAILED] Failed to mount Kernel Configuration File System.
See ‘systemctl status sys-kernel-config.mount’ for details.
[FAILED] Failed to start Remount Root and Kernel File Systems.
See ‘systemctl status systemd-remount-fs.service’ for details.
Starting Flush Journal to Persistent Storage…
[ 7.356650] systemd-journald[209]: Received client request to flush runtime journal.
Starting Create Static Device Nodes in /dev…
[ OK ] Finished Flush Journal to Persistent Storage.
[ OK ] Finished Coldplug All udev Devices.
[ OK ] Finished Create Static Device Nodes in /dev.
[ OK ] Reached target Preparation for Local File Systems.
Mounting /var/volatile…
Starting Wait for udev To …plete Device Initialization…
Starting Rule-based Manage…for Device Events and Files…
[FAILED] Failed to mount /var/volatile.
See ‘systemctl status var-volatile.mount’ for details.
[DEPEND] Dependency failed for Local File Systems.
[DEPEND] Dependency failed for Bind mount volatile /var/cache.
[DEPEND] Dependency failed for Bind mount volatile /var/spool.
[DEPEND] Dependency failed for Bind mount volatile /var/lib.
[DEPEND] Dependency failed for Bind mount volatile /srv.
[ OK ] Started Rule-based Manager for Device Events and Files.
[ OK ] Stopped Dispatch Password …ts to Console Directory Watch.
[ OK ] Stopped Forward Password R…uests to Wall Directory Watch.
[ OK ] Reached target Timer Units.
[ OK ] Closed Syslog Socket.
[ OK ] Reached target Login Prompts.
[ OK ] Reached target Preparation for Network.
Starting Network Configuration…
Starting Load/Save Random Seed…
[ OK ] Reached target Socket Units.
[ 8.338080] fsl-ssi-dai 2028000.ssi: No cache defaults, reading back from HW
[ OK ] Started Emergency Shell.
[ 8.486931] fsl-ssi-dai 2028000.ssi: No cache defaults, reading back from HW
[ OK ] Reached targe[ 8.509800] coda 2040000.vpu: Firmware code revision: 46076
t Emergency Mode.
[ 8.519734] coda 2040000.vpu: Initialized CODA960.
[ 8.527451] coda 2040000.vpu: Firmware version: 3.1.1
Starting Load Kernel Module fuse…
[ 8.580532] coda 2040000.vpu: coda-jpeg-encoder registered as video9
[ 8.602791] coda 2040000.vpu: coda-jpeg-decoder registered as video10
Starting Create Volatile Files and Directories…
[ 8.634499] coda 2040000.vpu: coda-video-encoder registered as video11
[ 8.663677] coda 2040000.vpu: coda-video-decoder registered as video12
[ 8.676715] imx-sdma 20ec000.dma-controller: loaded firmware 3.5
[ OK ] Finished Load/Save Random Seed.
[ OK ] Finished Load Kernel Module fuse.
[ 8.726554] fsl-ssi-dai 2028000.ssi: No cache defaults, reading back from HW
[ OK ] Finished Create Volatile Files and Directories.
[ 8.842449] fsl-asoc-card sound: ASoC: driver name too long ‘imx6q-apalis-sgtl5000’ → ‘imx6q-apalis-sg’
[ OK ] Created slice Slice /system/systemd-backlight.
[ OK ] Reached target Hardware activated USB gadget.
[ 9.043684] cfg80211: Loading compiled-in X.509 certificates for regulatory database
Mounting FUSE Control File System…
Starting Load Kernel Module configfs…
Starting Load/Save Screen …ness of backlight:backlight…
[FAILED] Failed to start Network Time Synchronization.
[ 9.223510] cfg80211: Loaded X.509 cert ‘sforshee: 00b28ddf47aef9cea7’
[ 9.239361] cfg80211: Loaded X.509 cert ‘wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600’
See ‘systemctl status systemd-timesyncd.service’ for details.
[ OK ] Reached target System Time Set.
Starting Record System Boot/Shutdown in UTMP…
[FAILED] Failed to mount FUSE Control File System.
See ‘systemctl status sys-fs-fuse-connections.mount’ for details.
[ OK ] Finished Load Kernel Module configfs.
[ OK ] Started Network Configuration.
[FAILED] Failed to start Load/Save …htness of backlight:backlight.
See ‘systemctl status systemd-backlight…cklight:backlight.service’ for details.
[ OK ] Finished Record System Boot/Shutdown in UTMP.
[ OK ] Reached target Network.
[ OK ] Reached target Sound Card.
[ OK ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
Mounting Kernel Configuration File System…
[ OK ] Started NFS status monitor for NFSv2/3 locking…
[ OK ] Stopped Network Time Synchronization.
Mounting Temporary Directory /tmp…
Starting Record Runlevel Change in UTMP…
[FAILED] Failed to mount Kernel Configuration File System.
See ‘systemctl status sys-kernel-config.mount’ for details.
[FAILED] Failed to mount Temporary Directory /tmp.
See ‘systemctl status tmp.mount’ for details.
[ OK ] Created slice Slice /system/systemd-fsck.
[FAILED] Failed to start Network Time Synchronization.
See ‘systemctl status systemd-timesyncd.service’ for details.
[ OK ] Stopped Network Time Synchronization.
Mounting Temporary Directory /tmp…
[ OK ] Finished Record Runlevel Change in UTMP.
[FAILED] Failed to mount Temporary Directory /tmp.
See ‘systemctl status tmp.mount’ for details.
[ OK ] Finished Wait for udev To Complete Device Initialization.
[ OK ] Found device /dev/mmcblk2p1.
[FAILED] Failed to start Hardware RNG Entropy Gatherer Daemon.
See ‘systemctl status rngd.service’ for details.
Starting File System Check on /dev/mmcblk2p1…
[FAILED] Failed to start Network Time Synchronization.
See ‘systemctl status systemd-timesyncd.service’ for details.
[ OK ] Stopped Network Time Synchronization.
Mounting Temporary Directory /tmp…
[FAILED] Failed to mount Temporary Directory /tmp.
See ‘systemctl status tmp.mount’ for details.
[FAILED] Failed to start Network Time Synchronization.
See ‘systemctl status systemd-timesyncd.service’ for details.
[ OK ] Stopped Network Time Synchronization.
Mounting Temporary Directory /tmp…
[FAILED] Failed to mount Temporary Directory /tmp.
See ‘systemctl status tmp.mount’ for details.
[FAILED] Failed to start Network Time Synchronization.
See ‘systemctl status systemd-timesyncd.service’ for details.
[ OK ] Stopped Network Time Synchronization.
[FAILED] Failed to mount Temporary Directory /tmp.
See ‘systemctl status tmp.mount’ for details.
[FAILED] Failed to start Network Time Synchronization.
See ‘systemctl status systemd-timesyncd.service’ for details.
[ OK ] Finished File System Check on /dev/mmcblk2p1.
Mounting /media/BOOT-mmcblk2p1…
[FAILED] Failed to mount /media/BOOT-mmcblk2p1.
See ‘systemctl status “media-BOOT\x2dmmcblk2p1.mount”’ for details.
You are in emergency mode. After logging in, type “journalctl -xb” to view
system logs, “systemctl reboot” to reboot, "systemPress Enter for maintenance
(or press Control-D to continue):

Could someone point out where I’m making a mistake? Thank you.

Hello,
On the dmesg output we can see failures to mount the RAM type filesystems, and also some other partitions (like /media/BOOT-mmcblk2p1).

At first, this looks like one of two things:

  1. your kernel modules didn’t get properly installed, and you have the failing drivers compiled as modules
  2. the kernel configuration was not setup correctly

To proceed further, I would like to know:

If you type “Enter” on the emergency prompt, do you get a console?

If yes, could you try lsmod and see if you have any loaded modules?

You could also check if the version of the kernel from uname -r matches a directory in /lib/modules.
If you don’t have a directory there matching the kernel version from uname, the modules will not be loaded. Here’s an example from a Colibri iMX8X with one of our reference images:

root@colibri-imx8x-06858909:~$ lsmod
Module                  Size  Used by
rfcomm                 90112  2
algif_hash             20480  1
algif_skcipher         20480  1
af_alg                 32768  6 algif_hash,algif_skcipher
btusb                  57344  0
btrtl                  24576  1 btusb
btintel                45056  1 btusb
btbcm                  28672  1 btusb
bluetooth             614400  32 btrtl,btintel,btbcm,btusb,rfcomm
fsl_jr_uio             20480  0
caam_jr               200704  2
caamkeyblob_desc       20480  1 caam_jr
caamhash_desc          16384  1 caam_jr
caamalg_desc           45056  1 caam_jr
crypto_engine          20480  1 caam_jr
authenc                16384  1 caam_jr
libdes                 24576  1 caam_jr
crct10dif_ce           20480  1
mwifiex_pcie           53248  0
mwifiex               278528  1 mwifiex_pcie
cfg80211              401408  1 mwifiex
rfkill                 36864  5 bluetooth,cfg80211
mcp251x                28672  0
mxc_jpeg_encdec        57344  0
v4l2_jpeg              16384  1 mxc_jpeg_encdec
can_dev                36864  1 mcp251x
imx8_media_dev         24576  0
snd_soc_fsl_sai        40960  2
caam                   32768  1 caam_jr
error                  24576  6 caamalg_desc,caamkeyblob_desc,caamhash_desc,caam,caam_jr,fsl_jr_uio
galcore               393216  13
fuse                  131072  1
root@colibri-imx8x-06858909:~$ uname -r
5.15.129-6.5.0+git.6f8fd49366db
root@colibri-imx8x-06858909:~$ ls -l /lib/modules/
total 4
drwxr-xr-x 4 root root 4096 Mar  9  2018 5.15.129-6.5.0+git.6f8fd49366db
root@colibri-imx8x-06858909:~#

On the same console, you could also type

zcat /proc/config.gz

and check if the configuration file matches the one you get on a working installation.

Best regards,
Rafael

Hello. I decided to try to integrate my core and modules into an already working system, this reduced the errors a bit but I still can’t figure out what the problem is.

  1. I create a reference image, it is installed and working.
  2. I add my modules (lib/modules) and core (zImage) to the system.
    after that the download log looks like this:
    serial_log.txt (48.9 KB)
    if I go back to the reference kernel (I made a backup before replacing) the boot log does not become normal.
    it looks like something was damaged in the failed boot process, how can i recover the system?

I noticed that if I deploy the modules using tar -xzf modules.tar.gz -C / according to High performance, low power Embedded Computing Systems | Toradex Developer Center -kernel-from-source-code/build-linux-kernel-from-source-code/ this causes my modules folder to be owned by weston, it doesn’t seem to happen if I just copy the files over the network.

I’m now back to the reference kernel, the system still doesn’t work properly.
lsmod:

Module Size Used by
cfg80211 405504 0
imx_sdma 28672 4
coda_vpu 94208 0
v4l2_jpeg 16384 1 coda_vpu
imx_vdoa 16384 1 coda_vpu
fuse 126976 1

root@apalis-imx6-11274726:~# uname -r
6.1.71-6.5.0-devel+git.38fb82ecd144
root@apalis-imx6-11274726:~# ls -l /lib/modules/
drwxr-xr-x 3 root root 4096 Jul 27 12:36 6.1.71-6.5.0-devel+git.38fb82ecd144

zcat_config.txt (181.2 KB)

Thanks.

Could you explain exactly what’s failing? I see some errors related to weston, is the graphical interface not coming up?
Is there anything else that’s wrong? Do you have the ethernet interface working?

Could you share the output of ls -l /lib/modules on the failing installation?

this causes my modules folder to be owned by weston,

This is probably because you’re compressing the files with your user’s ownership on your host machine. Your user probably has UID 1000 on your host machine, which on the module translated to weston.
You can check if the files are owned by UID 1000 by looking at the output of the following command:

ls -ln /lib/modules

I don’t think that this is causing any of the issues you’re seeing. We need to narrow down the problem to debug further. If you’re seeing problems starting weston, I would suggest trying to look at the output of the weston log, or maybe you could try to start it manually to see what errors come out:

/usr/bin/weston --modules=systemd-notify.so

I got the command above from the weston.service file located at /lib/systemd/system.

When I added the kernel and modules to the reference image, nothing worked for me.
I am currently adding my kernel and modules to an already installed image, now it works, I got a fully functional system when I started copying files over the network instead of archiving them.
Indeed, my user in the system has UID 1000.

After the system has been loaded at least once with modules belonging to the user weston, the graphical interface no longer works, the ethernet works.
Reverting to the stock kernel does not fix the situation.

Thank you. I will come back to this later, now I have a working system and want to add a video driver to it, it is more relevant at the moment.

1 Like