metag: cachepart: Fix failure check
authorAndrey Utkin <andrey.krieger.utkin@gmail.com>
Thu, 17 Jul 2014 15:58:06 +0000 (18:58 +0300)
committerJames Hogan <james.hogan@imgtec.com>
Fri, 18 Jul 2014 09:36:59 +0000 (10:36 +0100)
[linux-3.16-rc5/arch/metag/kernel/cachepart.c:102]: (style) Checking if
unsigned variable 'thread_cache_size' is less than zero.

Source code is

        if (thread_cache_size < 0)
            pr_emerg("Can't read %s cache size\n",
                 cache_type ? "DCACHE" : "ICACHE");

but

    unsigned int thread_cache_size;

Function get_thread_cache_size returns an error code
as (unsigned int) -1.

Change get_thread_cache_size() to return signed int, and its result is
stored into signed int variable.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=80361
Reported-by: David Binderman <dcb314@hotmail.com>
Signed-off-by: Andrey Utkin <andrey.krieger.utkin@gmail.com>
Signed-off-by: James Hogan <james.hogan@imgtec.com>
arch/metag/kernel/cachepart.c

index 0a2385f..04b7d4f 100644 (file)
@@ -55,7 +55,7 @@ unsigned int get_global_icache_size(void)
        return (get_icache_size() * ((temp >> SYSC_xCPARTG_AND_S) + 1)) >> 4;
 }
 
-static unsigned int get_thread_cache_size(unsigned int cache, int thread_id)
+static int get_thread_cache_size(unsigned int cache, int thread_id)
 {
        unsigned int cache_size;
        unsigned int t_cache_part;
@@ -94,7 +94,7 @@ static unsigned int get_thread_cache_size(unsigned int cache, int thread_id)
 
 void check_for_cache_aliasing(int thread_id)
 {
-       unsigned int thread_cache_size;
+       int thread_cache_size;
        unsigned int cache_type;
        for (cache_type = ICACHE; cache_type <= DCACHE; cache_type++) {
                thread_cache_size =