MN10300: The SMP_ICACHE_INV_FLUSH_RANGE IPI command does not exist
authorDavid Howells <dhowells@redhat.com>
Mon, 14 Mar 2011 14:45:29 +0000 (14:45 +0000)
committerDavid Howells <dhowells@redhat.com>
Mon, 14 Mar 2011 14:45:29 +0000 (14:45 +0000)
The invalidate-only versions of flush_icache_*range() are trying sending the
SMP_ICACHE_INV_FLUSH_RANGE IPI command in SMP kernels when they should be
sending SMP_ICACHE_INV_RANGE as the former does not exist.

Signed-off-by: David Howells <dhowells@redhat.com>
arch/mn10300/mm/cache-inv-icache.c

index a8933a60b2d44956e4518931e6f7395839b784d2..a6b63dde603d50ebcd42e0da51cd7efbb983d6de 100644 (file)
@@ -69,7 +69,7 @@ static void flush_icache_page_range(unsigned long start, unsigned long end)
 
        /* invalidate the icache coverage on that region */
        mn10300_local_icache_inv_range2(addr + off, size);
-       smp_cache_call(SMP_ICACHE_INV_FLUSH_RANGE, start, end);
+       smp_cache_call(SMP_ICACHE_INV_RANGE, start, end);
 }
 
 /**
@@ -101,7 +101,7 @@ void flush_icache_range(unsigned long start, unsigned long end)
                 * directly */
                start_page = (start >= 0x80000000UL) ? start : 0x80000000UL;
                mn10300_icache_inv_range(start_page, end);
-               smp_cache_call(SMP_ICACHE_INV_FLUSH_RANGE, start, end);
+               smp_cache_call(SMP_ICACHE_INV_RANGE, start, end);
                if (start_page == start)
                        goto done;
                end = start_page;