Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: src/sys/rump/librump



Module Name:    src
Committed By:   pooka
Date:           Wed Oct 14 17:17:00 UTC 2009

Added Files:
        src/sys/rump/librump: makerumpif.sh
        src/sys/rump/librump/rumpkern: rumpkern.ifspec
        src/sys/rump/librump/rumpnet: rumpnet.ifspec
        src/sys/rump/librump/rumpvfs: rumpvfs.ifspec

Log Message:
Create rump public interfaces from description tables.  This allows
us to control and wrap all entry points from "userspace" into rump.
This in turn is necessary for the upcoming rump cpu scheduler.

For each interface "foo" a public wrapper called "rump_foo" is
created.  It calls the internal implementation "rumppriv_foo".  In
case foo is to be called from inside of rump kernel space, the
private interface "rumppriv_foo" is used -- the userspace wrapper
prototypes are not even exported into the rump kernel namespace.
Needless to say, the rump kernel internal interfaces are not exported
for users.

Now, three classes of interfaces fight for control of rump:
  + the noble local control interfaces (which this commit addresses)
  + the insidious rump system calls (which are generated from syscalls.master)
  + and the evil vnode interfaces (which are generated from vnode_if.src)


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 src/sys/rump/librump/makerumpif.sh
cvs rdiff -u -r0 -r1.1 src/sys/rump/librump/rumpkern/rumpkern.ifspec
cvs rdiff -u -r0 -r1.1 src/sys/rump/librump/rumpnet/rumpnet.ifspec
cvs rdiff -u -r0 -r1.1 src/sys/rump/librump/rumpvfs/rumpvfs.ifspec

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