Re: Unable to boot custom kernel

From: Himanshu Chauhan <himanshu_at_thechauhan.dev>
Date: Tue, 27 Feb 2024 18:26:20 UTC

> On 27-Feb-2024, at 11:42 PM, Mitchell Horne <mhorne@freebsd.org> wrote:
> 
> Can you share the commandline you are using to launch QEMU?
> 
> Mitchell
> 
> On 2/27/24 13:37, Himanshu Chauhan wrote:
>> Hi Everyone,
>> I am unable to boot my custom kernel from commit ID 04440331b57(Feb22). Qemu throws the following error and exits:
>> qemu-system-riscv64: Some ROM regions are overlapping
>> These ROM regions might have been loaded by direct user request or by default.
>> They could be BIOS/firmware images, a guest kernel, initrd or some other file loaded into guest memory.
>> Check whether you intended to load all this guest code, and whether it has been built to load to the correct addresses.
>> The following two regions overlap (in the memory address space):
>>   <MY_BUILD_PATH>/riscv.riscv64/sys/GENERIC/kernel ELF program header segment 1 (addresses 0x0000000080200000 - 0x00000000807e0226)
>>   fdt (addresses 0x0000000080200000 - 0x0000000080201346)
>> I have tried with packaged Qemu as well as the latest one compiled from source code.
>> Any one else faced or facing this problem?
>> Thanks
>> Regards
>> Himanshu
> 

qemu-system-riscv64 \
	-machine virt \
	-m 2048M \
	-smp 2 \
	-nographic \
    	-bios <path/to/opensbi> \
    	-kernel <path/to/freebsd/kernel> \
    	-append "vfs.root.mountfrom=ufs:/dev/vtbd0" \
    	-drive riscv.img,format=raw,id=hd0 \
	-device virtio-blk-device,drive=hd0

I have always been following instruction from: https://wiki.freebsd.org/riscv
It used to work fine earlier.


Regards
Himanshu