imx7D boot failure Linux 2.8 ubifs_vm_page_mkwrite: out of space for mmapped file

My system suddenly fails to boot. 2 errors in boot log:
system.journal corrupted or uncleanly shut down, renaming and replacing
ubifs_vm_page_mkwrite: out of space for mmapped file.

Is there any way to fix this short of re-flashing?

Log continues: in infinite loop:
[ 16.156222] Hardware name: Freescale i.MX7 Dual (Device Tree)
[ 16.164016] [<8010e12c>] (unwind_backtrace) from [<8010ade0>] (show_stack+0x10/0x14)
[ 16.175751] [<8010ade0>] (show_stack) from [<8040dc8c>] (dump_stack+0x88/0x9c)
[ 16.186955] [<8040dc8c>] (dump_stack) from [<80113334>] (__do_user_fault+0xf8/0xfc)
[ 16.198643] [<80113334>] (__do_user_fault) from [<80113534>] (do_page_fault+0x1fc/0x388)
[ 16.210897] [<80113534>] (do_page_fault) from [<80101314>] (do_DataAbort+0x3c/0xb8)
[ 16.222788] [<80101314>] (do_DataAbort) from [<8010bc1c>] (__dabt_usr+0x3c/0x40)
[ 16.234550] Exception stack(0x88795fb0 to 0x88795ff8)
[ 16.241899] 5fa0: 00000000 00000004 76f33000 00000000
[ 16.254653] 5fc0: 0223b268 0223b398 00000006 00000002 7efad418 ffffffe4 7efad628 00000042
[ 16.267536] 5fe0: 76f03c48 7efad380 76dfab57 76dfab7c 00000030 ffffffff
[ 16.277009] systemd-journald[180]: Failed to open system journal: No space left on device
[ 16.292509] UBIFS warning (ubi0:3 pid 180): ubifs_vm_page_mkwrite: out of space for mmapped file (inode number 44310)
[ 16.307182] pgd = 887ac000
[ 16.311837] [767fb010] *pgd=88b24835, *pte=8282a79f, *ppte=8282ae7f
[ 16.320175] CPU: 0 PID: 180 Comm: systemd-journal Tainted:

What can I do? Do I need to reflash?


Looks like you run out of space on a flash disk. You can definitely try to re-flash your module. Also you load Toradex Easy Installer and try to mount root fs UBI volume using on serial debug terminal. In case of successful mounting you will be able to clean up it.

You can use the ubi* tools in Linux or ubi command in U-Boot to check/manipulate UBI volumes.

Alex, thanks for super quick response, I’ll give Toradex easy installer a try since I would rather not re-flash. Assuming it’s not our application, I’m concerned about operating system related log file or other file’s unrestrained growth as we have quite few of these systems. Are there any demons that you know of that do not put a quota on log or other system-related file sizes?


Adjust or silence a systemd service’s logging levels | Ctrl blog.

Hi Alex,
I typically use Easy Installer to install a new OS image. If I follow what you mentioned, and mount the UBIFS, am I actually running a newly loaded Linux from memory but using my existing UBIFS rootfs? Am I able to interact as I would with a Linux command prompt and delete a specific log file, or do I get a limited set of volume creation and deletion commands as I would from UBoot?

The Toradex Easy Installer is itself a stripped down version of Linux. It starts a GUI application on connected display(s) to select and flash desired image. On a serial debug port (UART_A) it has a standard Linux command line interface with basic Linux commands.