[OpenAFS-devel] Solaris afs.rc file damage

Dean Anderson dean@av8.com
Tue, 8 May 2007 08:13:31 -0400 (EDT)


On Mon, 7 May 2007, Jeffrey Hutzelman wrote:

> You are apparently confused, and do not actually understand the direction 
> in which things are going.  The issue is mostly not about linking; it's 
> about the directions in which people are willing to support extensibility. 
> Neither Linux nor Solaris really supports the concept of statically linking 
> external modules into the kernel.  

I could be confused, but I think it is you who are confused; I think
that because you accept/assert the premise that solaris and linux may
drop dynamic loading of system calls. Obviously, if they do that, they
will have to go back to a static linked kernel for custom system calls. 

It is no surprise that neither Linux nor Solaris don't support static
linking ___now___. They both currently support dynamic system call
loading.  Its only rumored that they plan to drop this support.

If they ___should___ drop dynamic system call loading, and we think this
probably or at least possible, they will probably add back in support
for static linking system calls. This is not a big deal for either
operating system.  But as you point out, it is mostly missing or
inconvenient at present. Though, in the case of linux, several kernel
add-ons (e.g. netfilter) are distributed as kernel source code patches.
Both Linux and Solaris could be suitable for kernel source code patched
static modules.

> It occurs to me that early in this thread you said you had talked to 
> someone in Sun and they said some group "wasn't committed" to dynamic 
> system calls.  

No, I didn't say this.  You said it:

Jeffery Hutzelman wrote Tue, 10 Apr 2007 21:10:46 -0400
> We have the contacts to do this; we just haven't done anything about it. 
> Unfortunately, part of the problem is that Sun doesn't consider the 
> user/kernel boundary to be a committed interface.  The committed interface 
> is the ABI between applications and the syscall stubs in libc; your libc 
> must match your kernel, and cross-version compatibility is present only for 
> dynamically-linked programs.

Hope that clears up your question. 

> First of all, please be careful when talking to people at Sun to not
> even give the impression you might be asking for something on
> OpenAFS's behalf.  We have contacts within Sun, and AFS developers who
> know something about how their process works, and we are working on
> gathering requirements and getting what we need from Sun, via that
> process.  It would be sad if we went to them with a detailed,
> well-reasoned request and were blown off because someone heard about
> you looking for information and misinterpreted it as a request for
> something unreasonable.

Of course I'll be careful not to represent myself as speaking for the 
OpenAFS project. 

However, I've already got the impression from talking to people that
they have previously thought the request unreasonable because they
believe that AFS can use a pseudo-driver. They also currently think the
OpenAFS syscall number of 65 is inappropriate, as its in a Sun-reserved
number block.

I am planning to submit a request for enhancement to get an assigned
system call number for AFS fileservice.  

> Second, I very much suspect you misinterpreted what was said. 
> Specifically, I suspect that was was actually said was not that "some 
> group" was not committed to dynamically-loaded system calls, but that the 
> interface for registering system calls was "not Committed".  That phrase 
> has a specific meaning within Sun, and it does _not_ mean that the 
> interface in question is going away soon.  What it _does_ mean is that this 
> interface should be (and is) on the list of interfaces for which we'll want 
> to set up a contract (another word with special meaning within Sun).

You said it. ;-)  But it was largely consistent, and I know about the
interface and framework terminology; I used to work at OSF (89-91 on
OSF/1 support, and DCE support, and even did Motif support and fixed Xt
bugs. 

> Really, while changing syscall numbers every few Solaris versions is a 
> pain, I've seen worse issues, and we do _not_ need to spend time worrying 
> that Sun is about to discontinue the system-call registration interface.

I agree. This subject has been beat to death, and that we have to wait
and see what happens. I said that already.... ;-)

		--Dean


-- 
Av8 Internet   Prepared to pay a premium for better service?
www.av8.net         faster, more reliable, better service
617 344 9000