linux-mips
[Top] [All Lists]

Problems with mips2 compiled libc and linux 2.4.3

To: "linux-mips@oss.sgi.com" <linux-mips@oss.sgi.com>
Subject: Problems with mips2 compiled libc and linux 2.4.3
From: Brian Murphy <brian@murphy.dk>
Date: Mon, 18 Jun 2001 20:11:36 +0200
Sender: owner-linux-mips@oss.sgi.com
It seems that this check(in asm-mips/elf.h):

#define elf_check_arch(hdr)
\
({
\
        int __res = 1;
\
        struct elfhdr *__h = (hdr);
\

\
        if ((__h->e_machine != EM_MIPS) &&
\
            (__h->e_machine != EM_MIPS_RS4_BE))
\
                __res = 0;
\
        if (__h->e_flags & EF_MIPS_ARCH)
\
                __res = 0;
\

\
        __res;
\
})

which is called in fs/binfmt_elf.c causes the loading of init to fail if

it is linked with a glibc compiled with -mips2. It is the second if test

which fails if any of the high 4 bits in the flags are set. According to
the
specs these are set for the various mipsx (x != 1) flavors - this seems
to mean
that we do no allow anything higher than mips1 run on linux - can this
be
true? If so, why?

/Brian


<Prev in Thread] Current Thread [Next in Thread>