diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-05-15 14:17:41 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-05-15 14:17:41 -0400 |
| commit | 0336104dcba613586cd22279db445840d4ebcdeb (patch) | |
| tree | 94df76934cc043810211f9de59d9d62ac20ec491 /include/linux | |
| parent | f0897f4cc0fcdd2410ba0ff0bc1bc64e6e72672a (diff) | |
| parent | b0dc2b9bb4ab782115b964310518ee0b17784277 (diff) | |
Merge branch 'akpm' (patches from Andrew)
Merge misc fixes from Andrew Morton:
"8 fixes"
* emailed patches from Andrew Morton <akpm@linux-foundation.org>:
mm, numa: really disable NUMA balancing by default on single node machines
MAINTAINERS: update Jingoo Han's email address
CMA: page_isolation: check buddy before accessing it
uidgid: make uid_valid and gid_valid work with !CONFIG_MULTIUSER
kernfs: do not account ino_ida allocations to memcg
gfp: add __GFP_NOACCOUNT
tools/vm: fix page-flags build
drivers/rtc/rtc-armada38x.c: remove unused local `flags'
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/gfp.h | 2 | ||||
| -rw-r--r-- | include/linux/memcontrol.h | 4 | ||||
| -rw-r--r-- | include/linux/uidgid.h | 4 |
3 files changed, 8 insertions, 2 deletions
diff --git a/include/linux/gfp.h b/include/linux/gfp.h index 97a9373e61e8..15928f0647e4 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h | |||
| @@ -30,6 +30,7 @@ struct vm_area_struct; | |||
| 30 | #define ___GFP_HARDWALL 0x20000u | 30 | #define ___GFP_HARDWALL 0x20000u |
| 31 | #define ___GFP_THISNODE 0x40000u | 31 | #define ___GFP_THISNODE 0x40000u |
| 32 | #define ___GFP_RECLAIMABLE 0x80000u | 32 | #define ___GFP_RECLAIMABLE 0x80000u |
| 33 | #define ___GFP_NOACCOUNT 0x100000u | ||
| 33 | #define ___GFP_NOTRACK 0x200000u | 34 | #define ___GFP_NOTRACK 0x200000u |
| 34 | #define ___GFP_NO_KSWAPD 0x400000u | 35 | #define ___GFP_NO_KSWAPD 0x400000u |
| 35 | #define ___GFP_OTHER_NODE 0x800000u | 36 | #define ___GFP_OTHER_NODE 0x800000u |
| @@ -87,6 +88,7 @@ struct vm_area_struct; | |||
| 87 | #define __GFP_HARDWALL ((__force gfp_t)___GFP_HARDWALL) /* Enforce hardwall cpuset memory allocs */ | 88 | #define __GFP_HARDWALL ((__force gfp_t)___GFP_HARDWALL) /* Enforce hardwall cpuset memory allocs */ |
| 88 | #define __GFP_THISNODE ((__force gfp_t)___GFP_THISNODE)/* No fallback, no policies */ | 89 | #define __GFP_THISNODE ((__force gfp_t)___GFP_THISNODE)/* No fallback, no policies */ |
| 89 | #define __GFP_RECLAIMABLE ((__force gfp_t)___GFP_RECLAIMABLE) /* Page is reclaimable */ | 90 | #define __GFP_RECLAIMABLE ((__force gfp_t)___GFP_RECLAIMABLE) /* Page is reclaimable */ |
| 91 | #define __GFP_NOACCOUNT ((__force gfp_t)___GFP_NOACCOUNT) /* Don't account to kmemcg */ | ||
| 90 | #define __GFP_NOTRACK ((__force gfp_t)___GFP_NOTRACK) /* Don't track with kmemcheck */ | 92 | #define __GFP_NOTRACK ((__force gfp_t)___GFP_NOTRACK) /* Don't track with kmemcheck */ |
| 91 | 93 | ||
| 92 | #define __GFP_NO_KSWAPD ((__force gfp_t)___GFP_NO_KSWAPD) | 94 | #define __GFP_NO_KSWAPD ((__force gfp_t)___GFP_NO_KSWAPD) |
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h index 72dff5fb0d0c..6c8918114804 100644 --- a/include/linux/memcontrol.h +++ b/include/linux/memcontrol.h | |||
| @@ -463,6 +463,8 @@ memcg_kmem_newpage_charge(gfp_t gfp, struct mem_cgroup **memcg, int order) | |||
| 463 | if (!memcg_kmem_enabled()) | 463 | if (!memcg_kmem_enabled()) |
| 464 | return true; | 464 | return true; |
| 465 | 465 | ||
| 466 | if (gfp & __GFP_NOACCOUNT) | ||
| 467 | return true; | ||
| 466 | /* | 468 | /* |
| 467 | * __GFP_NOFAIL allocations will move on even if charging is not | 469 | * __GFP_NOFAIL allocations will move on even if charging is not |
| 468 | * possible. Therefore we don't even try, and have this allocation | 470 | * possible. Therefore we don't even try, and have this allocation |
| @@ -522,6 +524,8 @@ memcg_kmem_get_cache(struct kmem_cache *cachep, gfp_t gfp) | |||
| 522 | { | 524 | { |
| 523 | if (!memcg_kmem_enabled()) | 525 | if (!memcg_kmem_enabled()) |
| 524 | return cachep; | 526 | return cachep; |
| 527 | if (gfp & __GFP_NOACCOUNT) | ||
| 528 | return cachep; | ||
| 525 | if (gfp & __GFP_NOFAIL) | 529 | if (gfp & __GFP_NOFAIL) |
| 526 | return cachep; | 530 | return cachep; |
| 527 | if (in_interrupt() || (!current->mm) || (current->flags & PF_KTHREAD)) | 531 | if (in_interrupt() || (!current->mm) || (current->flags & PF_KTHREAD)) |
diff --git a/include/linux/uidgid.h b/include/linux/uidgid.h index 0ee05da38899..03835522dfcb 100644 --- a/include/linux/uidgid.h +++ b/include/linux/uidgid.h | |||
| @@ -109,12 +109,12 @@ static inline bool gid_lte(kgid_t left, kgid_t right) | |||
| 109 | 109 | ||
| 110 | static inline bool uid_valid(kuid_t uid) | 110 | static inline bool uid_valid(kuid_t uid) |
| 111 | { | 111 | { |
| 112 | return !uid_eq(uid, INVALID_UID); | 112 | return __kuid_val(uid) != (uid_t) -1; |
| 113 | } | 113 | } |
| 114 | 114 | ||
| 115 | static inline bool gid_valid(kgid_t gid) | 115 | static inline bool gid_valid(kgid_t gid) |
| 116 | { | 116 | { |
| 117 | return !gid_eq(gid, INVALID_GID); | 117 | return __kgid_val(gid) != (gid_t) -1; |
| 118 | } | 118 | } |
| 119 | 119 | ||
| 120 | #ifdef CONFIG_USER_NS | 120 | #ifdef CONFIG_USER_NS |
