Seth Goldberg wrote:
> 
> Hi,
> 
>   I implemented a small check loop at the end of the fast_page_copy
> routine in mmx.c for the Athlon.  Booting the resulting kernel
> yields an interesting result. Every single time, the kernel
> panics RIGHT AFTER it frees unused kernel memory from bootup.
> I encourage those of you with the same problem to try this and report
> when it panics.
> 
> Here is my patch to mmx.c: (sorry about the long lines)
> -----------------------------------------------------cut here
> diff -r linux-ref/arch/i386/lib/mmx.c linux/arch/i386/lib/mmx.c
> 204a205,216
> >
> >       {
> >               register int x = 0;
> >               /* do mem compares to ensure written == read */
> >               for ( /* initted above */; x < (4096/sizeof(int)); x++ )
> >               {
> >                       if ( ((int *)to)[x] != ((int *)from)[x] ) {
> >                               panic("fast_page_copy: dest value @ 0x%lx (%x) does 
>not equal source value @ %lx (%x)!\n",
> >                                               (long) to, ((int *)to)[x], (long) 
>from, ((int *) from)[x] );
> >                       }
> >               }
> >       }
> -----------------------------------------------------cut here
> 
>   Wouldn't it be correct to say that because it is panicking, the
> page copy was not completed properly?

No, you are comparing the following two pages... from and to are
incremented as the copy proceeds.  Subtract PAGE_SIZE from them before
comparing.

--

                                Brian Gerst
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to