tech-userlevel archive

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

Re: Rumpification (was Re: CVS commit: src/usr.sbin/envstat)



On Tue, Dec 14, 2010 at 02:22:50PM +1100, Simon Burge wrote:
> "Antti Kantee" wrote:
> 
> > Module Name:        src
> > Committed By:       pooka
> > Date:               Mon Dec 13 18:00:39 UTC 2010
> > 
> > Modified Files:
> > 
> >     src/usr.sbin/envstat: Makefile envstat.c
> > Added Files:
> > 
> >     src/usr.sbin/envstat: envstat_hostops.c envstat_rumpops.c prog_ops.h
> > 
> > Log Message:
> > 
> > RUMP_ACTION -> RUMPPRG
> 
> This doesn't appear to be a very scalable or usable solution.  Lots
> of nearly but not quite the same *hostops.c and *rumpops.c files are
> appearing over the source tree.  Random syscalls now gain a prog_ prefix
> which adds no readability to the code, for example:
> 
> -       (void)close(sysmonfd);
> +       (void)prog_close(sysmonfd);

Antti,

Looks like interesting and exciting work you're doing.

I understand how avoiding prog_socket(), prog_open(), and other
"descriptor-creating" routines will be difficult or impossible, however,
I don't see why the rest---ioctl(), close(), dup2(), read()---cannot
be handled by syscall shims that refer to a table of extant RUMP
descriptors to see whether to make an ordinary syscall or a RUMP
syscall.

Do you think that ifconfig can configure itself for RUMP/non-RUMP
syscalls at run time by switching on, say, argv[0]?

Dave

-- 
David Young             OJC Technologies
dyoung%ojctech.com@localhost      Urbana, IL * (217) 278-3933


Home | Main Index | Thread Index | Old Index