diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2020-04-16 16:21:07 +0200 |
---|---|---|
committer | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2020-04-16 16:21:07 +0200 |
commit | e31acb8a8ac221d64555b91498375daddeb907c5 (patch) | |
tree | 6f6e99382a5b0c86a41fd988a32391fdef428dc8 /mm | |
parent | be0ee11d10b24b74d194786bbfc30c754157fbe8 (diff) | |
parent | 0a27a29496060843ae3a8fe78aaec0062cbd5dfa (diff) | |
download | linux-rt-e31acb8a8ac221d64555b91498375daddeb907c5.tar.gz |
Merge tag 'v5.6.4' into linux-5.6.y-rt
This is the 5.6.4 stable release
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/mempolicy.c | 6 | ||||
-rw-r--r-- | mm/slub.c | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 977c641f78cf..f93b52bf6ffc 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -2841,7 +2841,9 @@ int mpol_parse_str(char *str, struct mempolicy **mpol) switch (mode) { case MPOL_PREFERRED: /* - * Insist on a nodelist of one node only + * Insist on a nodelist of one node only, although later + * we use first_node(nodes) to grab a single node, so here + * nodelist (or nodes) cannot be empty. */ if (nodelist) { char *rest = nodelist; @@ -2849,6 +2851,8 @@ int mpol_parse_str(char *str, struct mempolicy **mpol) rest++; if (*rest) goto out; + if (nodes_empty(nodes)) + goto out; } break; case MPOL_INTERLEAVE: diff --git a/mm/slub.c b/mm/slub.c index 1929645daa53..15c194ff16e6 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -259,7 +259,7 @@ static inline void *freelist_ptr(const struct kmem_cache *s, void *ptr, * freepointer to be restored incorrectly. */ return (void *)((unsigned long)ptr ^ s->random ^ - (unsigned long)kasan_reset_tag((void *)ptr_addr)); + swab((unsigned long)kasan_reset_tag((void *)ptr_addr))); #else return ptr; #endif |