Re: [gem5-users] Does Risc-V support multi-threaded applications in SE mode?

2019-08-19 Thread Alec Roelke
There has been work done on supporting multithreading with pthreads in SE
mode and I believe it does work with RISC-V.  If not, you can try these
three patches: #16768
, #16769
, #16848
 (note that the
last one may have a merge conflict).

As for FS mode, there is currently work being done on it, but full support
is not yet available.  I believe it is possible to run bare-metal binaries,
but not boot Linux.

On Fri, Aug 16, 2019 at 10:35 AM Francisco Carlos 
wrote:

> Does Risc-V support multi-threaded applications in SE mode?
>
> I would like to run a multi-core processor using Risc-V. I intend to use
> pthread to parallelize my code but i don't know if it is supported in
> Risc-V ISA with SE mode.
>
> If not, is already possible to build a full system in RISC-V ISA?
>
> can anyone help me with these questions?
>
> Thanks in advance.
>
>
> --
> Francisco Carlos Silva Junior
> PhD candidate
> Computer science Departament
> University of Brasilia
> ___
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

Re: [gem5-users] question about build errors

2019-08-19 Thread Jason Lowe-Power
Hello,

What compiler are you using? Those errors are from the compiler which
doesn't like implicit conversion from void*.

Jason

On Mon, Aug 19, 2019 at 9:47 AM Shougang Yuan  wrote:

> Hi, all,
>
> Today I suffered from a weird problem when building gem5. I make some
> changes and then re-build it, but the error shows like this. And when I get
> a new repo from gem5 without any modification, the same error shows up
> again. Anyone knows what happened to this?
>
> In file included from build/libfdt/fdt.c:35:0:
> build/libfdt/libfdt_internal.h: In function 'fdt_reserve_entry*
> _fdt_mem_rsv_w(void*, int)':
> build/libfdt/libfdt_internal.h:71:54: error: invalid conversion from
> 'void*' to 'fdt_reserve_entry*' [-fpermissive]
>  return (void *)(uintptr_t)_fdt_mem_rsv(fdt, n);
>   ^
> build/libfdt/fdt.c: In function 'const void* fdt_offset_ptr(const void*,
> int, unsigned int)':
> build/libfdt/fdt.c:65:28: error: invalid conversion from 'const void*' to
> 'const char*' [-fpermissive]
>  p = _fdt_offset_ptr(fdt, offset);
> ^
> build/libfdt/fdt.c: In function 'uint32_t fdt_next_tag(const void*, int,
> int*)':
> build/libfdt/fdt.c:80:30: error: invalid conversion from 'const void*' to
> 'const fdt32_t* {aka const unsigned int*}' [-fpermissive]
>  tagp = fdt_offset_ptr(fdt, offset, FDT_TAGSIZE);
>   ^
> build/libfdt/fdt.c:91:43: error: invalid conversion from 'const void*' to
> 'const char*' [-fpermissive]
>  p = fdt_offset_ptr(fdt, offset++, 1);
>^
> build/libfdt/fdt.c:98:38: error: invalid conversion from 'const void*' to
> 'const fdt32_t* {aka const unsigned int*}' [-fpermissive]
>  lenp = fdt_offset_ptr(fdt, offset, sizeof(*lenp));
>   ^
> scons: *** [build/libfdt/fdt.os] Error 1
> scons: building terminated because of errors.
>
> Best regards.
> ___
> gem5-users mailing list
> gem5-users@gem5.org
> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] question about build errors

2019-08-19 Thread Shougang Yuan
Hi, all,

Today I suffered from a weird problem when building gem5. I make some
changes and then re-build it, but the error shows like this. And when I get
a new repo from gem5 without any modification, the same error shows up
again. Anyone knows what happened to this?

In file included from build/libfdt/fdt.c:35:0:
build/libfdt/libfdt_internal.h: In function 'fdt_reserve_entry*
_fdt_mem_rsv_w(void*, int)':
build/libfdt/libfdt_internal.h:71:54: error: invalid conversion from
'void*' to 'fdt_reserve_entry*' [-fpermissive]
 return (void *)(uintptr_t)_fdt_mem_rsv(fdt, n);
  ^
build/libfdt/fdt.c: In function 'const void* fdt_offset_ptr(const void*,
int, unsigned int)':
build/libfdt/fdt.c:65:28: error: invalid conversion from 'const void*' to
'const char*' [-fpermissive]
 p = _fdt_offset_ptr(fdt, offset);
^
build/libfdt/fdt.c: In function 'uint32_t fdt_next_tag(const void*, int,
int*)':
build/libfdt/fdt.c:80:30: error: invalid conversion from 'const void*' to
'const fdt32_t* {aka const unsigned int*}' [-fpermissive]
 tagp = fdt_offset_ptr(fdt, offset, FDT_TAGSIZE);
  ^
build/libfdt/fdt.c:91:43: error: invalid conversion from 'const void*' to
'const char*' [-fpermissive]
 p = fdt_offset_ptr(fdt, offset++, 1);
   ^
build/libfdt/fdt.c:98:38: error: invalid conversion from 'const void*' to
'const fdt32_t* {aka const unsigned int*}' [-fpermissive]
 lenp = fdt_offset_ptr(fdt, offset, sizeof(*lenp));
  ^
scons: *** [build/libfdt/fdt.os] Error 1
scons: building terminated because of errors.

Best regards.
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users

[gem5-users] Where is the "actual data" that is referenced by the block?

2019-08-19 Thread Muhammet Abdullah Soytürk
Hi all,

In cache_blk.hh, there is a field "uint8_t* data" and in the comment it
states that this field contains a copy of the data in this block for easy
access and it should be kept consistant with the "actual data" referenced
by this block. Where is this "actual data" referenced by this block?

Best,
Muhammet
___
gem5-users mailing list
gem5-users@gem5.org
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users