Commit 5316b497 authored by Roman Gushchin's avatar Roman Gushchin Committed by Andrew Morton

mm: memcg1: convert charge move flags to unsigned long long

Currently MOVE_ANON and MOVE_FILE flags are defined as integers
and it leads to the following Smatch static checker warning:
    mm/memcontrol-v1.c:609 mem_cgroup_move_charge_write()
    warn: was expecting a 64 bit value instead of '~(1 | 2)'

Fix this be redefining them as unsigned long long.

Even though the issue allows to set high 32 bits of mc.flags
to an arbitrary number, these bits are never used, so it doesn't
have any significant consequences.

Link: https://lkml.kernel.org/r/ZpF8Q9zBsIY7d2P9@google.comSigned-off-by: default avatarRoman Gushchin <roman.gushchin@linux.dev>
Reported-by: default avatarDan Carpenter <dan.carpenter@linaro.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 6ab42fe2
...@@ -44,8 +44,8 @@ static struct mem_cgroup_tree soft_limit_tree __read_mostly; ...@@ -44,8 +44,8 @@ static struct mem_cgroup_tree soft_limit_tree __read_mostly;
/* /*
* Types of charges to be moved. * Types of charges to be moved.
*/ */
#define MOVE_ANON 0x1U #define MOVE_ANON 0x1ULL
#define MOVE_FILE 0x2U #define MOVE_FILE 0x2ULL
#define MOVE_MASK (MOVE_ANON | MOVE_FILE) #define MOVE_MASK (MOVE_ANON | MOVE_FILE)
/* "mc" and its members are protected by cgroup_mutex */ /* "mc" and its members are protected by cgroup_mutex */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment