Re: Kernel oops in read()

Larry Sendlosky (larry@scrugs.lkg.dec.com)
Mon, 5 Jun 2000 12:37:32 EDT


> It seems that the standard RH kernel builds (certainly 6.0, 6.1) generate
> kernels under which
> the got table size is >64k. This breaks the exception table handling in the

I build my own kernel and the .got section is < 64KB. I checked
the RH 2.2.13-0.9 kernel and the .got is >64KB.

> kernel.
> So when system calls do protected reads from user space they are not actually
> protected
> and generate oops if the user supplies bad addresses.
>
> Anyway the fix/workaround is to uncomment the -relax option in the
> arch/alpha/Makefile.
> This (in most cases) reduces the got table to be <64k and so avoids the problem.

Actually, if it is "legal" to build a kernel with a .got > 64KB,
then the kernel exception handler needs to be fixed.

larry

______________________________________________________________________
Larry Sendlosky ATS
larry@scrugs.lkg.dec.com (978) 506-6640 Compaq
----------------------------------------------------------------------

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/