> --- 2.4/mm/filemap.c Wed Feb 14 10:51:42 2001
> +++ build-2.4/mm/filemap.c Wed Feb 14 22:11:44 2001
> @@ -1248,6 +1248,20 @@
> size = count;
>
> kaddr = kmap(page);
> + if (size > 128) {
> + int i;
> + __asm__ __volatile__(
> + "mov %1, %0\n\t"
> + : "=r" (i)
> + : "r" (kaddr+offset)); /* load tlb entry */
> + for(i=0;i<size;i+=64) {
> + __asm__ __volatile__(
> + "prefetchnta (%1, %0)\n\t"
> + "prefetchnta 32(%1, %0)\n\t"
> + : /* no output */
> + : "r" (i), "r" (kaddr+offset));
> + }
> + }
> left = __copy_to_user(desc->buf, kaddr + offset, size);
> kunmap(page);
This seems bogus -- you need to handle faults --
i.e. __prefetchnta_to_user() ;-).
Pavel
-- I'm pavel@ucw.cz. "In my country we have almost anarchy and I don't care." Panos Katsaloulis describing me w.r.t. patents at discuss@linmodems.org - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/