It is indeed great to have a new riscv64 system available.

I tried to use it to test Free Pascal on that CPU.

I tried to use strace and gdb on gcc401:


muller@gcc401:~/pas/check$ strace ~/bin/ppcrv64 -gl hello.pp
/usr/bin/strace: test_ptrace_get_syscall_info: PTRACE_TRACEME: Function not 
implemented
/usr/bin/strace: ptrace(PTRACE_TRACEME, ...): Function not implemented
/usr/bin/strace: PTRACE_SETOPTIONS: Function not implemented
/usr/bin/strace: detach: waitpid(117236): No child processes
/usr/bin/strace: Process 117236 detached

muller@gcc401:~/pas/check$ gdb --args  ~/bin/ppcrv64 -gl hello.pp
GNU gdb (Debian 10.1-1+b1) 10.1
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "riscv64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /home/muller/bin/ppcrv64...
(gdb) inf fun GENERATEERR
All functions matching regular expression "GENERATEERR":

File verbose.pas:
        procedure GENERATEERROR;
(gdb) b GENERATEERROR
Breakpoint 1 at 0x603ec: file verbose.pas, line 566.
(gdb) r
Starting program: /home/muller/bin/ppcrv64 -gl hello.pp
warning: Error disabling address space randomization: Operation not permitted
warning: Could not trace the inferior process.
warning: ptrace: Function not implemented
During startup program exited with code 127.


 Is it possible to lift this limitation, or is this a kernel limitation?

Pierre Muller

Le 20/11/2020 à 21:05, Baptiste Jonglez via cfarm-users a écrit :
Hi,

I have just setup emulated RISC-V systems running Debian, accessible
to all farm users over SSH.  They are not shown yet in the list of
machines, here are the connection details (~/.ssh/config format):

Host gcc401.fsffrance.org
      Port 45061

Host gcc402.fsffrance.org
      Port 45062

It's still in BETA, but it seems to be working nicely so far.

All data in /home is shared with the host, gcc140.  It means you can
edit files and prepare your work on gcc140 (it will be faster because
there is no emulation), and then run your builds by connecting to one
of the RISC-V containers.

Some limitations:

- absolutely no service is running in the containers, except sshd

- in particular, cron is not yet supported

- all host CPU cores are usable, so please limit the number of
   concurrent jobs (usual rules [0] apply)

- I plan to rebuild the images regularly, which means rebooting the
   containers: any long-running task might be interrupted.  Data in
   /home will of course be preserved when upgrading.

The images are built using mmdebstrap [1] and the resulting rootfs is
run in Docker with qemu-user-static.

The idea is that you can reproduce this yourself if you want to run
such emulated containers locally, everything is documented [2].  But
it's still nice to have this as a service in the farm (easy access to
a host with fast CPU / lots of memory, thanks to OSUOSL).

Please let me know if you find this service useful or if you want to
help adding another OS, or if you run into issues.  For instance, I'm
interested to know if an emulated container is not enough for some
use-cases.  Emulating full virtual machines is possible [3] and
planned, but it's more challenging to integrate in the farm.

Baptiste

[0] https://gcc.gnu.org/wiki/CompileFarm#Usage
[1] https://wiki.debian.org/RISC-V#Creating_a_riscv64_chroot
[2] https://framagit.org/compile-farm/risc-v-virtual-cloud
[3] https://wiki.debian.org/RISC-V#Setting_up_a_riscv64_virtual_machine


_______________________________________________
cfarm-users mailing list
[email protected]
https://lists.tetaneutral.net/listinfo/cfarm-users

_______________________________________________
cfarm-users mailing list
[email protected]
https://lists.tetaneutral.net/listinfo/cfarm-users

Reply via email to