Hello,

I try to install a real-time Linux kernel on a Roboard based on a Vortex86DX
(a x486 with TSC).

All works fine with :
Linux Kernel 2.6.30.10
Xenomai 2.5.1
Adeos patch adeos-ipipe-2.6.30.8-x86-2.4-09.patch

But, for all kernels upper or equal to 2.6.31, I always get a double fault
when testing WP bit. I have this double fault just after that :

*Checking if this processor honours the WP bit even in supervisor mode...*

I traced with some simple printk that the problem occurs in this function,
at the end or after the call of fix_to_virt  :

*static noinline int do_test_wp_bit(void)
{
        char tmp_reg;
        int flag;

        __asm__ __volatile__(
                "       movb %0, %1     \n"
                "1:     movb %1, %0     \n"
                "       xorl %2, %2     \n"
                "2:                     \n"
                _ASM_EXTABLE(1b,2b)
                :"=m" (*(char *)fix_to_virt(FIX_WP_TEST)),
                 "=q" (tmp_reg),
                 "=r" (flag)
                :"2" (1)
                :"memory");

        return flag;
}*

I'm (quasi) sure that the problem is not that function, due to it works when
the kernel is not patched.
But where should I search ?

Can you give me some indications ?

Thanks,
Gilles
_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main

Reply via email to