Thread (1 message) 1 message, 1 author, 2001-01-23

Re: mprotect broken on ppc

From: Olaf Hering <hidden>
Date: 2001-01-23 13:03:48

On Sun, Jan 21, Olaf Hering wrote:
On Sat, Jan 20, Olaf Hering wrote:
quoted
On Sat, Jan 20, Olaf Hering wrote:
quoted
Hi,

there seems to be a bug in mprotect which was introduced in
test9->test10.

The result is an invalid pointer from the getpwuid(3) function, this
function is used in rpm to check owner and group permissions.
forgot some facts:

the build host runs always a glibc2.13 system with 2.2 headers. The
build chroot runs a glibc2.2 system with 2.4.0ac2 headers.
And it fails when a kernel 2.4.0-test10 or later is running, every other
kernel works fine.
I put some debug in mm/mprotect.c:
...
asmlinkage long sys_mprotect(unsigned long start, size_t len, unsigned
long prot)
{
        unsigned long nstart, end, tmp;
        struct vm_area_struct * vma, * next;
        int error = -EINVAL;

        if (start & ~PAGE_MASK) {
                printk("sys_mprotect start \n");
                return -EINVAL;
        }
...

it fails here.
Jan 21 18:28:06 mandarine kernel: sys_mprotect start
sys_mprotect start= 6ffdffb0,PAGE_MASK= fffff000


It was solved with this patch:
http://penguinppc.org/~olaf/broken_build/elf.diff


Gruss Olaf

--
 $ man clone

BUGS
       Main feature not yet implemented...

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help