[hppa-linux] syscall work

Michael Shalayeff mickey@lucifier.dial-up.user.akula.net
Fri, 26 Mar 1999 10:39:43 -0500 (EST)


Making, drinking tea and reading an opus magnum from Mike Shaver:
> Bob Pflederer wrote:
> > 
> > > OK, I'm convinced.  I've changed unistd.h to use 0xC0000404 (on the next
> > > page) for the syscall gateway, although we can easily change it back.
> > 
> > Isn't the next page at 0xc0001000?  Or does linux have some concept of
> > 1k "pages" even though pages in the TLB are 4k?
> 
> Brain-o.  0xC0001004 it is.
> 
> While we're on the topic, though: why 0xC0000004 and not 0xC0000000 as
0xC0000004 is because hpux uses it (;
dunno about linux's binary emulation principles, but for
all bsd's the emulation parameters pointer is located in the proc
structure, which allows syscall emulation to work even all
the emulated os'es are using the same syscall entry point (on some
architectures there might be only one possible way for syscall, 4 xampl)

> the target address?  (Although there are other bugs, like ``ldo 5,%r22''
> instead of ``ldi 5,%r22'' in the Assembler Ref as well, so maybe this is
> another?)
there is no such pa-risc instruction like ldi, it's a pseudo-asm-insn
which is actually ldo imm(0), rt
the whole pa-risc asm is full of pseudo-insns (like comb, comib, b(ranch))

cu

-- 
    paranoic mickey       (my employers have changed but, the name has remained)