On 8 September 2016 at 10:29, Dennis Luehring <dl.so...@gmx.net> wrote: > small tests show that this seem not to be a kernel or gcc bug (same problem > with linux 4.5,4.6.4,4,7, gcc 5.2,5.3,6.1)
That doesn't show that it's not a kernel bug -- it just shows that if it is a kernel bug it's been around since at least 4.5... You could test that it's not a kernel bug by booting the kernel and initrd on a real malta board, if you had one. > is my big_inird.cpio too large for the malta platform (or my linux-conf?) or > is this maybe an emulation problem with qemu? I don't know MIPS particularly, but I took a quick look at the malta board code. One thing that does stand out is that the malta memory map has the full 2G of RAM starting at 0x80000000, but also has a 256M window (alias) into that RAM starting at 0. I think that if the kernel is linked such that it loads at the 0 alias address rather than the 0x80000000 full-ram address then when QEMU puts the initrd immediately after the kernel it will run off the end of the alias window. You could test this theory by putting some printfs in the load_kernel() function in hw/mips/mips_malta.c to see what addresses the kernel and initrd are being put at. If the initrd is being put properly into the high part of RAM then the problem may be in the kerneli if it tries to refer to it via the limited-size alias window. thanks -- PMM