This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: MIPS Assembly.


On Tue, 22 Jun 2004, Thiemo Seufer wrote:
> Chris Jones wrote:
> >
> > David;
> >
> > Your patch works. (At least it compiles.) It may take me sometime yet to
> > see if this modules actually loads without bringing ther kernel to its
> > knees. ;)
>
> It has AFAIK the problem of exporting broken R_MIPS_PC16 relocs, which
> limits the branch range to +-32k, and may cause binary compatibility
> problems in future.

So this was for jumping back from the "exception handler" in the
get_user/put_user macros (supposedly in asm-mips/uaccess.h)?

Methinks it's very unlikely that the distance from the
"exception code" section in the kernel is less than 32k. ;-)
Doesn't mips have a long-jump insn that can be used?

Of course you won't notice invalid code for than insn until a
program passes an invalid address for the syscall executing the
put_user/get_user macro in question: the kernel will then crash
instead of sending a SEGV to the program or returning -EFAULT.

brgds, H-P


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]