Re: HTIF tohost symbol size check always fails

2020-10-16 Thread Alistair Francis
On Fri, Oct 16, 2020 at 2:35 PM Peer Adelt  wrote:
>
> The solution was even easier: I forgot to load the proxy kernel. As soon as I 
> replaced the command-line parameter "-kernel " with "-kernel  
> -append ", everything was working as expected.

Even better, you can skip the proxy kernel.

You can run:

`-bios default -kernel `

Alistair

>
> Without your hint about my possibly misconfigured toolchain I would have 
> probably continued to search for the error in the QEMU HTIF device. But in 
> fact it was due to the wrong binary.
>
> Thanks a lot! :-)
>
> > On 16. Oct 2020, at 20:03, Alistair Francis  wrote:
> >
> > On Fri, Oct 16, 2020 at 7:59 AM Peer Adelt  wrote:
> >>
> >> Hi,
> >>
> >> I have a problem with the RISC-V HTIF device.
> >>
> >> Every binary I have compiled for Spike on riscv32 fails with the following 
> >> error message: "HTIF tohost must be 8 bytes"
> >>
> >> This happens regardless of which program I have translated for Spike. This 
> >> is also the case with the official riscv-compliance tests, for example.
> >>
> >> The query "if (st_size != 8)" in the HTIF device always fails, because 
> >> st_size seems to be always 0.
> >>
> >> To be able to reproduce it:
> >> - QEMU GIT Hash: d0ed6a69d399ae193959225cdeaa9382746c91cc (tag "v5.1.0")
> >
> > I just checked with this hash and with the current master and on both
> > I can run a ELF executable on the Spike machine for RV32.
> >
> >> - System: Mac OS 10.14.6 (Darwin Kernel Version 18.7.0)
> >> - Compiler: Latest SiFive Build for GCC under OSX
> >
> > Maybe try using an official toolchain instead of a vendor fork.
> >
> > Alistair
> >
> >> - Command: qemu-system-riscv32 -M spike -nographic -bios none -kernel 
> >> 
> >>
> >> Best regards,
> >> Peer Adelt
>



Re: HTIF tohost symbol size check always fails

2020-10-16 Thread Peer Adelt
The solution was even easier: I forgot to load the proxy kernel. As soon as I 
replaced the command-line parameter "-kernel " with "-kernel  -append 
", everything was working as expected. 

Without your hint about my possibly misconfigured toolchain I would have 
probably continued to search for the error in the QEMU HTIF device. But in fact 
it was due to the wrong binary.

Thanks a lot! :-)

> On 16. Oct 2020, at 20:03, Alistair Francis  wrote:
> 
> On Fri, Oct 16, 2020 at 7:59 AM Peer Adelt  wrote:
>> 
>> Hi,
>> 
>> I have a problem with the RISC-V HTIF device.
>> 
>> Every binary I have compiled for Spike on riscv32 fails with the following 
>> error message: "HTIF tohost must be 8 bytes"
>> 
>> This happens regardless of which program I have translated for Spike. This 
>> is also the case with the official riscv-compliance tests, for example.
>> 
>> The query "if (st_size != 8)" in the HTIF device always fails, because 
>> st_size seems to be always 0.
>> 
>> To be able to reproduce it:
>> - QEMU GIT Hash: d0ed6a69d399ae193959225cdeaa9382746c91cc (tag "v5.1.0")
> 
> I just checked with this hash and with the current master and on both
> I can run a ELF executable on the Spike machine for RV32.
> 
>> - System: Mac OS 10.14.6 (Darwin Kernel Version 18.7.0)
>> - Compiler: Latest SiFive Build for GCC under OSX
> 
> Maybe try using an official toolchain instead of a vendor fork.
> 
> Alistair
> 
>> - Command: qemu-system-riscv32 -M spike -nographic -bios none -kernel 
>> 
>> 
>> Best regards,
>> Peer Adelt




Re: HTIF tohost symbol size check always fails

2020-10-16 Thread Alistair Francis
On Fri, Oct 16, 2020 at 7:59 AM Peer Adelt  wrote:
>
> Hi,
>
> I have a problem with the RISC-V HTIF device.
>
> Every binary I have compiled for Spike on riscv32 fails with the following 
> error message: "HTIF tohost must be 8 bytes"
>
> This happens regardless of which program I have translated for Spike. This is 
> also the case with the official riscv-compliance tests, for example.
>
> The query "if (st_size != 8)" in the HTIF device always fails, because 
> st_size seems to be always 0.
>
> To be able to reproduce it:
> - QEMU GIT Hash: d0ed6a69d399ae193959225cdeaa9382746c91cc (tag "v5.1.0")

I just checked with this hash and with the current master and on both
I can run a ELF executable on the Spike machine for RV32.

> - System: Mac OS 10.14.6 (Darwin Kernel Version 18.7.0)
> - Compiler: Latest SiFive Build for GCC under OSX

Maybe try using an official toolchain instead of a vendor fork.

Alistair

> - Command: qemu-system-riscv32 -M spike -nographic -bios none -kernel 
> 
>
> Best regards,
> Peer Adelt



HTIF tohost symbol size check always fails

2020-10-16 Thread Peer Adelt
Hi,

I have a problem with the RISC-V HTIF device. 

Every binary I have compiled for Spike on riscv32 fails with the following 
error message: "HTIF tohost must be 8 bytes"

This happens regardless of which program I have translated for Spike. This is 
also the case with the official riscv-compliance tests, for example.

The query "if (st_size != 8)" in the HTIF device always fails, because st_size 
seems to be always 0.

To be able to reproduce it:
- QEMU GIT Hash: d0ed6a69d399ae193959225cdeaa9382746c91cc (tag "v5.1.0")
- System: Mac OS 10.14.6 (Darwin Kernel Version 18.7.0)
- Compiler: Latest SiFive Build for GCC under OSX
- Command: qemu-system-riscv32 -M spike -nographic -bios none -kernel 


Best regards,
Peer Adelt