udlfb: avoid prefetch
authorMikulas Patocka <mpatocka@redhat.com>
Wed, 25 Jul 2018 13:41:57 +0000 (15:41 +0200)
committerBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Wed, 25 Jul 2018 13:41:57 +0000 (15:41 +0200)
Modern processors can detect linear memory accesses and prefetch data
automatically, so there's no need to use prefetch.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
drivers/video/fbdev/udlfb.c

index 22e6a2bc472256acb3b6b03ba0fb870ca3120731..589e3fba447b06641e77c266618f6ce6b009fed8 100644 (file)
@@ -25,7 +25,6 @@
 #include <linux/fb.h>
 #include <linux/vmalloc.h>
 #include <linux/slab.h>
-#include <linux/prefetch.h>
 #include <linux/delay.h>
 #include <asm/unaligned.h>
 #include <video/udlfb.h>
@@ -375,9 +374,6 @@ static int dlfb_trim_hline(const u8 *bback, const u8 **bfront, int *width_bytes)
        int start = width;
        int end = width;
 
-       prefetch((void *) front);
-       prefetch((void *) back);
-
        for (j = 0; j < width; j++) {
                if (back[j] != front[j]) {
                        start = j;
@@ -454,8 +450,6 @@ static void dlfb_compress_hline(
                        continue;
                }
 
-               prefetchw((void *) cmd); /* pull in one cache line at least */
-
                *cmd++ = 0xAF;
                *cmd++ = 0x6B;
                *cmd++ = dev_addr >> 16;
@@ -479,8 +473,6 @@ static void dlfb_compress_hline(
                                cmd_pixel_end--;
                }
 
-               prefetch_range((void *) pixel, (u8 *)cmd_pixel_end - (u8 *)pixel);
-
                while (pixel < cmd_pixel_end) {
                        const uint16_t * const repeating_pixel = pixel;
                        u16 pixel_value = *pixel;