Skip to content

Commit

Permalink
metag: cachepart: Fix failure check
Browse files Browse the repository at this point in the history
[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>
  • Loading branch information
Andrey Utkin authored and James Hogan committed Jul 18, 2014
1 parent 8bc613b commit f93125a
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions arch/metag/kernel/cachepart.c
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down Expand Up @@ -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 =
Expand Down

0 comments on commit f93125a

Please sign in to comment.