On Fri, Mar 21, 2014 at 5:57 PM, Antti Kantee <[email protected]> wrote: > On 21/03/14 17:49, Justin Cormack wrote: >>> Is there any reason why we need a .ro for the build phase? Could we >>> just put all the magic in a rumprun libc.so and be able to run >>> off-the-shelf NetBSD dynamic binaries? We may have discussed this >>> earlier, but I've forgotten again. I'm guessing your cache is hot on >>> the details of rumprun, so now's a good time to (re-)discuss. >> >> The issue is that it is linked against host and NetBSD libc so there would >> be symbol collisions. > > Right, but can't all the symbols in the binary be renamed, and then we > hook up the necessary calls to host in libc.so? I'm sure it's easier > said than done, though ... > >> The way it works now is to resolve all NetBSD symbols except the syscalls >> but this is not so easy in the dynamic case. >> >> I think it is possible though. That was why I was working on static linking >> before. It might require a custom host toolchain. > > Ok, please keep us posted on that research!
There are some issues with just renaming symbols, eg some are needed and may still collide. I think the correct thing to do is probably to "port" NetBSD libc to the other platforms. To get dynamic libs working you are going to have to make libdl working as well. So basically you have a local working libc that makes rump calls instead of syscalls, but otherwise works, so you dont link the host libc at all. To make rumpuser/rumpclient work you statically link these with a host libc so they just do host syscalls and dont need a libc. The thing to do to try this out would be to do it on NetBSD first as of course you dont need to port libc at all, so it is fairly trivial... > p.s. updated the rump-pktgenif configure script to rumprun executive. > The script, IMHO, looks very approachable now: > https://github.com/rumpkernel/rump-pktgenif/blob/master/tool/config.sh.example Yes that looks better. ------------------------------------------------------------------------------ Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/13534_NeoTech _______________________________________________ rumpkernel-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/rumpkernel-users
