[1289] in NetBSD-Development
AFS port for MIPS: how compatible?
daemon@ATHENA.MIT.EDU (Jonathan Stone)
Fri Mar 29 08:36:45 1996
Resent-To: netbsd-afs@MIT.EDU
Resent-From: John Kohl <jtk@kolvir.arlington.ma.us>
Resent-To: jtk@atria.com
Date: Thu, 28 Mar 1996 17:36:23 -0800
From: Jonathan Stone <jonathan@DSG.Stanford.EDU>
To: John Kohl <jtk@kolvir.arlington.ma.us>
hi,
There are currently some small differences between the pica and pmax
user-space environment. Just from memory::
- signal delivery doesn't seem to be quite the same.
I don't understand why, but the PICA port defines
some MI signal tweaks that the pmax port doesn't.
- the two ports have inconsistent mappings from BERR* and
addressing exceptions to SIGBUS/SIGSEGV. Hopefully
that won't affect you.
Otherwise, I've merged the elf exec support for both ports into
arch/mips/mips/elf.c They should be "the same". Per Fogelstrom is
working on implementing shared libraries. modulo mips-I vs mips-III
insn set differences, the same binaries -- the same shared libs --
should run on a pmax or on a pica. Per is talking with Christos
about the exec support; I think what's going to happen is that
the existing compat ELF-exec support will be redone with something
that supports demand-paged execution of either compat or (on mips,
and alpha?) native binaries.
Some of the device special numbers (and /dev names)are wildly
different. I can't see that being much of a problem.
You're absolutely correct that there's no LKM support. It would require
adding ELF support to modload.
Even if there _were_ modload support, it might not currently
be possible to have a single binary LKM for both pica and pmax.
It depends, of course, at what level AFS interfaces to the rest of the
kerenl. The pmap internals, and (I think, but I hope I'm wrong) even
the interfaces were kludged to deal with the aliasing and consistency
problems of the r4000's virtually-indexed cache.
Per says the problems come when constructing a mapping, in kernel
space, for doing I/O to or from user space.
I don't understand what Per's problem is. I know the Sparc port does
a better job of handling this. I don't understand why a combination
of page-colouring, and aligning the start virtual addresses of all
mapped regions, wouldn't make this a non-problem. It's entirely
possible, though, that it _is_ a problem, and I just don't understand
it.
That's a lot of gory detail but I hope it helps. If you want to
follow up, please do so.
--------
>From: John Kohl <jtk@kolvir.arlington.ma.us>
>To: jonathan@NetBSD.ORG
>Subject: AFS port for MIPS: how compatible?
>X-US-Snail: 8 Lorne Road, Arlington, MA 02174
>
>Before someone finishes a NetBSD/mips port of AFS, I suppose we should
>ask whether the user space is sharable among pmax/decstation and
>pica/xxx stuff, and whether a kernel module could be compiled to handle
>either kernel environment.
>
>I am under the impression that there is no LKM support for the mips
>boxes yet (modload needs work for non-a.out formats), so we'll have to
>compile and link directly with the kernel. Is this correct?
>
>==John
>