sys/common_ansi.h not found (dde rump)- sculpt for virt qemu riscv
Sebastian Sumpf
Sebastian.Sumpf at genode-labs.com
Fri Mar 31 18:45:57 CEST 2023
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/471227cabb32b6412ad5366c2092e1007e19e845
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/riscv/atomic <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 at genode-labs.com
> <mailto:Sebastian.Sumpf at 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 at genode-labs.com <mailto:Sebastian.Sumpf at genode-labs.com>
> > <mailto:Sebastian.Sumpf at genode-labs.com
> <mailto:Sebastian.Sumpf at 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 at lists.genode.org <mailto:users at lists.genode.org>
> <mailto:users at lists.genode.org <mailto:users at 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 at lists.genode.org <mailto:users at 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 at lists.genode.org <mailto:users at lists.genode.org>
> https://lists.genode.org/listinfo/users
> <https://lists.genode.org/listinfo/users>
>
>
> _______________________________________________
> Genode users mailing list
> users at lists.genode.org
> https://lists.genode.org/listinfo/users
--
Sebastian Sumpf
Genode Labs
http://www.genode-labs.com · http://genode.org
Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
More information about the users
mailing list