QEMU 4.1 and RISC-V
Muhammad Moinur Rahman
bofh at FreeBSD.org
Mon Sep 30 10:58:49 UTC 2019
Hi Li-Wen,
Should we add this to pkg-message for 4.1.X?
Kind Regards,
@bofh
> On 30 Sep, 2019, at 08:54, Li-Wen Hsu <lwhsu at freebsd.org> wrote:
>
> On Mon, Sep 30, 2019 at 4:28 AM Li-Wen Hsu <lwhsu at freebsd.org> wrote:
>>
>> On Mon, Sep 30, 2019 at 4:12 AM Mitchell Horne <mhorne at freebsd.org> wrote:
>>>
>>> On Sun, Sep 29, 2019 at 4:56 PM Li-Wen Hsu <lwhsu at freebsd.org> wrote:
>>>>
>>>> On Sun, Sep 29, 2019 at 10:48 PM Mitchell Horne <mhorne at freebsd.org> wrote:
>>>>>
>>>>>
>>>>> On Sun, Sep 29, 2019, 15:17 Li-Wen Hsu <lwhsu at freebsd.org> wrote:
>>>>>>
>>>>>> I found that RISC-V test started failing recently:
>>>>>> https://ci.freebsd.org/job/FreeBSD-head-riscv64-test/
>>>>>>
>>>>>> After some checking, I found the issue is our bbl image cannot boot
>>>>>> with this command:
>>>>>>
>>>>>> qemu-system-riscv64 -nographic -m 2048M -kernel ./bbl
>>>>>>
>>>>>> in QEMU 4.1, while 3.1 and 4.0 are fine. I've switched the QEMU
>>>>>> version used in that job to 4.0, but I think it would be best if we
>>>>>> can find the root cause is in FreeBSD or QEMU.
>>>>>>
>>>>>> Can anyone also help on this?
>>>>>
>>>>>
>>>>> Hi Li-Wen,
>>>>>
>>>>> I can take a look in the coming week if you're okay with the workaround for the time being. Locally
>>>>> I've had no issue running bbl with qemu 4.1 but perhaps there's something more specific that the
>>>>> CI script is doing.
>>>>>
>>>>> I'm hoping we will soon be able to replace bbl with the more actively maintained OpenSBI firmware.
>>>>> I have some pending changes that will allow us to boot FreeBSD with it, and after that I'd like to
>>>>> create ports for both bootloaders, which I hope will make the CI setup a little simpler and less fragile
>>>>> than building bbl currently is.
>>>>
>>>> Thanks very much, Mitchell,
>>>>
>>>> Let's narrow down the scope, are you using the qemu-devel pkg from
>>>> official repository or building by yourself?
>>>>
>>>
>>> This was using qemu that I had built myself, but the executable from qemu-devel
>>> works for me as well.
>>>
>>>> And can you try this bbl image?
>>>> https://artifact.ci.freebsd.org/snapshot/head/r352870/riscv/riscv64/bbl.xz
>>>
>>> I had no issue booting this image with my self-built qemu or the one from
>>> pkg. The only observable difference from qemu 3.1 is that a warning is
>>> printed to stderr, but considering the CI script is timing out I don't think
>>> that is the issue.
>>
>> What's your command line to launch qemu? The CI (and I) uses this:
>>
>> qemu-system-riscv64 -nographic -m 2048M -kernel ./bbl
>>
>> I also tried to build qemu locally, and result is the same. I also did
>> a git bisect:
>>
>> 0ac24d56c5e7d32423ea78ac58a06b444d1df04d is the first bad commit
>
> Hmm, after checking with wiki.freebsd.org/riscv, I found that we need
> to specify `-machine virt` now.
>
> QEMU 4.1 default machine for riscv64 is "spike" not "spike_v1.10"
> anymore, and need other more arguments.
More information about the freebsd-riscv
mailing list