OF: fdt: Ignoring memory range 0x40000000 - 0x80000000

Mario Marietto marietto2008 at gmail.com
Wed Sep 27 00:36:10 CEST 2023


Hello.

The project that I've been working on since 2 years is to enable KVM (with
the support of libvirt and virt-manager) on a recent version of Linux and
of its kernel on the old but still nice ARM Chromebook model xe303c12. My
goal is to virtualize FreeBSD 13.2 for armV7. I've almost completed the
project. At today I'm using Ubuntu 22.04 (but it works also with Devuan 5)
; KVM is enabled ; libvirt 9.7.0 and virt-manager are working great. And
I've almost been able to virtualize FreeBSD. Almost because I've found a
problem that I need to fix or the whole project will die. Ubuntu recognizes
only 1 GB of memory free,but the ARM Chromebook has 2 GB of memory soldered
to the mobo. So,1 GB of memory has been lost during the transition from the
first project I tried to enable KVM with an old kernel (and ubuntu)
version,that you can find here :


http://www.virtualopensystems.com/en/solutions/guides/kvm-on-chromebook/#setting-up-the-boot-medium


and my project,which uses a more recent kernel version (5.4) and ubuntu
version (22.04). I think that when I have recompiled the kernel,I've lost
some kernel entries that are enabled on the 3.13 kernel used by the
developers at the Virtual Open System. Well,I have no idea about which
entries my kernel config are missing.

I have checked the available memory for the OS giving the command :


# free -m


If I don't recover 1 GB of memory,I can't virtualize FreeBSD,because only 1
GB is a very small amount of memory to be able to run the host and the
guest OS.

So,can someone help me to find which kernel entries I should add to have
all the 2 GB of memory available ?

Virtual Open System offers it's own kernel config file,that I have saved
here :


https://pastebin.ubuntu.com/p/j4B54TChKD/


using their kernel config file I see that I have a total of 2 GB of memory
available (I spend 400 mb to load Linux,so only 600 remains ; it's not
good. In Fact I get a lot of qemu crashes), but If I use my config file the
OS starts with only 1 GB.


I want also share two kernel config files :

1) the kernel 3.13 dmesg log file where 2 GB is recognized,here :

https://pastebin.ubuntu.com/p/gsw9SM4zY3/

2) the kernel 5.4 dmesg log file where only 1 GB is recognized,here :

https://pastebin.ubuntu.com/p/W6Mgj4jGg2/


I've compared the dmesg logs (kernel 3.13 vs kernel 5.4 config files) and I
think this is the reason why I have only 1 GB of memory available :

* OF: fdt: Ignoring memory range 0x40000000 - 0x80000000*

This line is not present on the kernel 3.13 dmesg log file,but it is on the
kernel 5.4 dmesg log file. The dtb file generation seems involved. What do
you think ?

I'm trying to understand what to do to fix this problem. Can you give me
some suggestions ? thanks

-- 
Mario.


More information about the U-Boot mailing list