Source-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: src/usr.bin/rump_allserver
Module Name: src
Committed By: pooka
Date: Mon Dec 13 14:13:22 UTC 2010
Modified Files:
src/usr.bin/rump_allserver: rump_allserver.c
Log Message:
Add -m which can be used to load modules (which is a completely
different code path than using dlopen() before rump_init(), since
the former uses the in-kernel linker and the latter links the object
in rtld).
So:
golem> ./rump_server -l librumpvfs.so -m /sys/modules/tmpfs/tmpfs.kmod
unix:///tmp/commsuck
==>
golem> env RUMP_SERVER=unix:///tmp/commsuck rump.modstat
NAME CLASS SOURCE REFS SIZE REQUIRES
suser secmodel builtin 0 - -
tmpfs vfs filesys 0 16713 -
wapbl vfs builtin 0 - -
Source is filesys instead of builtin, as expected.
Notably, for -m you *must* use -l librumpvfs.so. This is because
you need VFS in your kernel to be able to load modules from the
file system. In a regular kernel "librumpvfs.so" is linked at
kernel build time and loaded by the bootloader. Here we use dlopen()
for both effects (the other choices would have been to link
rump_server with -lrumpvfs, but that would limit the flexibility,
or link tmpfs.kmod directly into the binary, but that would limit
the flexibility even more).
To generate a diff of this commit:
cvs rdiff -u -r1.6 -r1.7 src/usr.bin/rump_allserver/rump_allserver.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index