[parisc-linux] sash commands
Philipp Rumpf
Philipp.H.Rumpf@mathe.stud.uni-erlangen.de
Sun, 7 Nov 1999 14:09:24 +0100
> > If I see this correctly this is the 4-argument problem. Our current (hacked)
> > syscall support only supports the register arguments because supporting the
> > other ones too just would mean nobody ever got around to fix syscall support :)
>
> Partly. I should be less gnomic..
>
> Yes, the 4-argument problem is relevant, but it's not the only thing.
> sash (since it's a linux program) uses the linux arguments to sys_mount(),
> so rather than both writing hpux_mount(), I decided to convince sash to
> use the Linux entry point for sys_mount(), and that's what the sash-willy
> in puffin.external.hp.com's /tmp has different to the other sashes.
Oh. I was under the impression mount was POSIX-defined (it is not). Sure,
getting it to use Linux syscalls is the best thing to do.
> Then I discovered that Linux syscalls were not working because we didn't
> have a page mapped at 0xC000'1000, then I discovered we didn't have a
> page mapped at 0xC000'0000 either and there was instead a nasty kludge
> in fault.c to handle hpux syscalls. So I added a nasty kludge in there
> to make linux syscalls work too (and they don't have the 4-argument
> limitation, due to the syscall convention which I decreed).
>
> Now I'm blundering around in the mm system trying to figure out how to
> get gateway pages working properly.
Well, the first step would be to get PAGE_OFFSET == 0x8000 0000 (or any other value
that does not collide with 0xc000 0000) working. I tried to keep dependencies on
it at a minimum but completely failed, so if someone could find all instances of
depi 3,1,2,XXX and replace them with tovirt XXX
0xc0000000 (as PAGE_OFFSET) PAGE_OFFSET / __PAGE_OFFSET
that would help a lot (otherwise I'll try).
Philipp Rumpf