diff options
author | Ingo Molnar <mingo@kernel.org> | 2017-08-11 07:51:59 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2017-08-11 07:51:59 -0400 |
commit | 040cca3ab2f6f8b8d26e0e4965abea2b9aa14818 (patch) | |
tree | 25709ba52ee06fccf4bfbfbf2897bb8cf86da828 /mm/page_alloc.c | |
parent | ef0758dd0fd70b98b889af26e27f003656952db8 (diff) | |
parent | b2dbdf2ca1d2803e9cdc46a94554c4a39ffb235a (diff) |
Merge branch 'linus' into locking/core, to resolve conflicts
Conflicts:
include/linux/mm_types.h
mm/huge_memory.c
I removed the smp_mb__before_spinlock() like the following commit does:
8b1b436dd1cc ("mm, locking: Rework {set,clear,mm}_tlb_flush_pending()")
and fixed up the affected commits.
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'mm/page_alloc.c')
-rw-r--r-- | mm/page_alloc.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/mm/page_alloc.c b/mm/page_alloc.c index c20d89601802..6acf612fdd99 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c | |||
@@ -4501,8 +4501,9 @@ long si_mem_available(void) | |||
4501 | * Part of the reclaimable slab consists of items that are in use, | 4501 | * Part of the reclaimable slab consists of items that are in use, |
4502 | * and cannot be freed. Cap this estimate at the low watermark. | 4502 | * and cannot be freed. Cap this estimate at the low watermark. |
4503 | */ | 4503 | */ |
4504 | available += global_page_state(NR_SLAB_RECLAIMABLE) - | 4504 | available += global_node_page_state(NR_SLAB_RECLAIMABLE) - |
4505 | min(global_page_state(NR_SLAB_RECLAIMABLE) / 2, wmark_low); | 4505 | min(global_node_page_state(NR_SLAB_RECLAIMABLE) / 2, |
4506 | wmark_low); | ||
4506 | 4507 | ||
4507 | if (available < 0) | 4508 | if (available < 0) |
4508 | available = 0; | 4509 | available = 0; |
@@ -4645,8 +4646,8 @@ void show_free_areas(unsigned int filter, nodemask_t *nodemask) | |||
4645 | global_node_page_state(NR_FILE_DIRTY), | 4646 | global_node_page_state(NR_FILE_DIRTY), |
4646 | global_node_page_state(NR_WRITEBACK), | 4647 | global_node_page_state(NR_WRITEBACK), |
4647 | global_node_page_state(NR_UNSTABLE_NFS), | 4648 | global_node_page_state(NR_UNSTABLE_NFS), |
4648 | global_page_state(NR_SLAB_RECLAIMABLE), | 4649 | global_node_page_state(NR_SLAB_RECLAIMABLE), |
4649 | global_page_state(NR_SLAB_UNRECLAIMABLE), | 4650 | global_node_page_state(NR_SLAB_UNRECLAIMABLE), |
4650 | global_node_page_state(NR_FILE_MAPPED), | 4651 | global_node_page_state(NR_FILE_MAPPED), |
4651 | global_node_page_state(NR_SHMEM), | 4652 | global_node_page_state(NR_SHMEM), |
4652 | global_page_state(NR_PAGETABLE), | 4653 | global_page_state(NR_PAGETABLE), |
@@ -7711,7 +7712,7 @@ int alloc_contig_range(unsigned long start, unsigned long end, | |||
7711 | 7712 | ||
7712 | /* Make sure the range is really isolated. */ | 7713 | /* Make sure the range is really isolated. */ |
7713 | if (test_pages_isolated(outer_start, end, false)) { | 7714 | if (test_pages_isolated(outer_start, end, false)) { |
7714 | pr_info("%s: [%lx, %lx) PFNs busy\n", | 7715 | pr_info_ratelimited("%s: [%lx, %lx) PFNs busy\n", |
7715 | __func__, outer_start, end); | 7716 | __func__, outer_start, end); |
7716 | ret = -EBUSY; | 7717 | ret = -EBUSY; |
7717 | goto done; | 7718 | goto done; |