Hello Pranab,
since I think by now that this topic is a little too complicated, for various reasons, for someone outside of Genode Labs and also because of my own interest in RISC-V, I have ported dde_rump to Genode. As said before, it is not much work in case one knows what has to be done, but for new people there a too many hurdles to take, I guess.
Anyway, you can find the issue under [1] and the commit you would need to cherry pick from my "issue4800_rump_riscv" branch under [2].
[1] https://github.com/genodelabs/genode/issues/4800 [2] https://github.com/ssumpf/genode/commit/471227cabb32b6412ad5366c2092e1007e19...
Cheers,
Sebastian
On 3/28/23 07:44, Pranab Kumar Rout cs21m045 wrote:
Hi genodians, I tried to proceed with Sebastian's suggestions. When I fetched dde_rump from [ https://github.com/justincormack/netbsd-src https://github.com/justincormack/netbsd-src ] while preparing port for riscv, I received an error message as patch could not be applied. Here is the error message:
dde_rump download https://github.com/justincormack/netbsd-src <https://github.com/justincormack/netbsd-src> dde_rump git Cloning into 'src/lib/dde_rump'... Updating files: 100% (31930/31930), done./31930) dde_rump update src/lib/dde_rump dde_rump download https://github.com/justincormack/netbsd-src/trunk/src/sys/arch <https://github.com/justincormack/netbsd-src/trunk/src/sys/arch> dde_rump download https://github.com/justincormack/netbsd-src/trunk/src/common/lib/libc/arch/riscv/atomic <https://github.com/justincormack/netbsd-src/trunk/src/common/lib/libc/arch/riscv/atomic> dde_rump apply patches/rump.patch 1 out of 1 hunk FAILED -- saving rejects to file src/lib/dde_rump/src/sys/sys/module.h.rej make[2]: *** [/genode/tool/ports/mk/install.mk:128 <http://install.mk:128>: phony/patches/patches/rump.patch] Error 1 make[1]: *** [/genode/tool/ports/mk/prepare_single_port.mk:43 <http://prepare_single_port.mk:43>: _install_in_port_dir] Error 2 make: *** [tool/ports/prepare_port:47: dde_rump] Error 2
I didn't know, if am supposed to modify the patch file or the file (module.h). So I decided to move on with the previous repo (https://github.com/ssumpf/rump.git https://github.com/ssumpf/rump.git) and I manually added the missing header files in [ /genode/contrib/dde_rump-<hash>/src/lib/dde_rump/src/sys/sys ] that were required to build sculpt for virt riscv. The fatal error problem was gone but now while building sculpt I am getting the following error.
COMPILE vnode_if.o COMPILE xlat_mbr_fstype.o make[7]: *** No rule to make target 'atomic_add_16.S', needed by 'atomic_add_16.o'. Stop. make[6]: *** [var/libdeps:184: rump.lib] Error 2 make[5]: *** [Makefile:336: gen_deps_and_build_targets] Error 2 make[4]: *** [/genode/tool/depot/mk/build_bin_archive:208: /genode/depot/genodelabs/bin/riscv/rump/2023-03-28-b.build/bin] Error 1 make[3]: *** [/genode/depot/var/build.mk:264 <http://build.mk:264>: genodelabs/bin/riscv/rump/2023-03-28-b] Error 2 make[2]: *** [/genode/tool/depot/build:136: execute_generated_build_mk_file] Error 2 make[1]: *** [/genode/tool/depot/create:59: build] Error 2 make[1]: Leaving directory '/genode/build/riscv' child process exited abnormally
I have found out that, there is no 'atomic_add_16.S' in (https://github.com/justincormack/netbsd-src/trunk/src/common/lib/libc/arch/r... https://github.com/justincormack/netbsd-src/trunk/src/common/lib/libc/arch/riscv/atomic) but its there for aarch64 which is not working for me as I am working on riscv.
These were the two problems I have faced, please give some comments on it and kindly suggest something through which I can proceed further.
thanks & regards Pranab
On Fri, Mar 17, 2023 at 1:22 PM Sebastian Sumpf <Sebastian.Sumpf@genode-labs.com mailto:Sebastian.Sumpf@genode-labs.com> wrote:
On 3/15/23 15:23, Pranab Kumar Rout cs21m045 wrote: > Hi all, > As I see in [1], when we prepare port for dde_rump, it fetches from [2] and not > from [3]. And I found that the "src/sys/sys/common_ansi.h" is not present in > [2]. May be for this reason while building sculpt the error came up. Also in [1] > I can see that its fetching libc files from > "/src/common/lib/libc/arch/aarch64/atomic" and not from > "/src/common/lib/libc/arch/riscv/atomic". Is it okay or should I update this in > [1] ? Yes. Cheers, Sebastian > [1] repos/dde_rump/ports/dde_rump.port > <https://github.com/genodelabs/genode/blob/master/repos/dde_rump/ports/dde_rump.port <https://github.com/genodelabs/genode/blob/master/repos/dde_rump/ports/dde_rump.port>> > [2] https://github.com/ssumpf/rump.git <https://github.com/ssumpf/rump.git> <https://github.com/ssumpf/rump.git <https://github.com/ssumpf/rump.git>> > [3] https://github.com/justincormack/netbsd-src <https://github.com/justincormack/netbsd-src> > <https://github.com/justincormack/netbsd-src <https://github.com/justincormack/netbsd-src>> > > Were you suggesting to update this thing ? Please have a look and suggest steps > I need to take. > I think this must be the reason for that fatal error. Kindly acknowledge. > > Regards, > Pranab > > On Mon, Mar 13, 2023 at 4:07 PM Sebastian Sumpf <Sebastian.Sumpf@genode-labs.com <mailto:Sebastian.Sumpf@genode-labs.com> > <mailto:Sebastian.Sumpf@genode-labs.com <mailto:Sebastian.Sumpf@genode-labs.com>>> wrote: > > Hello Pranab, > > On 3/13/23 07:47, Pranab Kumar Rout cs21m045 wrote: > > Hello genodians, > > While building sculpt for virt_qemu_riscv, I found that dde_rump port is not > > prepared for RISCV. Taking help from the community, I used the same > approach as > > for arm_v8a (aarch64) as found under > "repos/dde_rump/lib/mk/spec/arm_64/*" just > > for "spec/riscv" in order to enable rump support for RISC-V. > > I am getting this error. If you find it familiar, kindly help me > > checking library dependencies... > > Library ldso_so_support > > COMPILE so_support.o > > MERGE ldso_so_support.lib.a > > Library ld > > CONVERT ld.symbols.s > > ASSEMBLE ld.symbols.o > > MERGE ld.abi.so <http://ld.abi.so> <http://ld.abi.so <http://ld.abi.so>> <http://ld.abi.so <http://ld.abi.so> <http://ld.abi.so <http://ld.abi.so>>> > > Library base > > MERGE base.lib.a > > Library block_session > > MERGE block_session.lib.a > > Library config > > MERGE config.lib.a > > Library file_system > > MERGE file_system.lib.a > > Library file_system_session > > MERGE file_system_session.lib.a > > Library os > > MERGE os.lib.a > > Library rump_include > > MERGE rump_include.lib.a > > Library rump > > COMPILE __main.o > > In file included from > > > /genode/depot/genodelabs/src/rump/2023-03-07-b/src/lib/dde_rump/src/sys/sys/types.h:47, > > from > > > /genode/depot/genodelabs/src/rump/2023-03-07-b/src/lib/dde_rump/src/sys/lib/libkern/__main.c:33: > > > /genode/depot/genodelabs/bin/riscv/rump/2023-03-07-b.build/var/libcache/rump/include/machine/ansi.h:3:10: fatal error: sys/common_ansi.h: No such file or directory > > 3 | #include <sys/common_ansi.h> > > | ^~~~~~~~~~~~~~~~~~~ > > When looking at "contrib/dde_rump-<hash>/src/lib/dde_rump_aarch64_backport" I > can see that only "src/sys/arch" [1] is checked out from [2] while > "common_ansi.h" resides under "src/sys/sys/common_ansi.h" [3]. Therefore, you > could adjust [1] to also checkout "src/sys" or "src/sys/sys" and update the > "INC_DIR" and/or symlinks under "dde_rump/lib/mk/spec/riscv" accordingly. > > [1] repos/dde_rump/ports/dde_rump.port > [2] https://github.com/justincormack/netbsd-src <https://github.com/justincormack/netbsd-src> > <https://github.com/justincormack/netbsd-src <https://github.com/justincormack/netbsd-src>> > [3] > https://github.com/justincormack/netbsd-src/blob/master/src/sys/sys/common_ansi.h <https://github.com/justincormack/netbsd-src/blob/master/src/sys/sys/common_ansi.h> <https://github.com/justincormack/netbsd-src/blob/master/src/sys/sys/common_ansi.h <https://github.com/justincormack/netbsd-src/blob/master/src/sys/sys/common_ansi.h>> > > *Note: When adjusting "dde_rump.port" you need to execute > > ! ./tool/ports/update_hash dde_rump > > in order to create a new hash for the port. > > Regards, > > Sebastian > > -- > Sebastian Sumpf > Genode Labs > > http://www.genode-labs.com <http://www.genode-labs.com> <http://www.genode-labs.com <http://www.genode-labs.com>> · http://genode.org <http://genode.org> > <http://genode.org <http://genode.org>> > > Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden > Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth > > > > > > _______________________________________________ > Genode users mailing list > users@lists.genode.org <mailto:users@lists.genode.org> <mailto:users@lists.genode.org <mailto:users@lists.genode.org>> > https://lists.genode.org/listinfo/users <https://lists.genode.org/listinfo/users> > <https://lists.genode.org/listinfo/users <https://lists.genode.org/listinfo/users>> > > > _______________________________________________ > Genode users mailing list > users@lists.genode.org <mailto:users@lists.genode.org> > https://lists.genode.org/listinfo/users <https://lists.genode.org/listinfo/users> -- Sebastian Sumpf Genode Labs http://www.genode-labs.com <http://www.genode-labs.com> · http://genode.org <http://genode.org> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth _______________________________________________ Genode users mailing list users@lists.genode.org <mailto:users@lists.genode.org> https://lists.genode.org/listinfo/users <https://lists.genode.org/listinfo/users>
Genode users mailing list users@lists.genode.org https://lists.genode.org/listinfo/users