diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-12-28 19:55:46 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-12-28 19:55:46 -0500 |
| commit | f346b0becb1bc62e45495f9cdbae3eef35d0b635 (patch) | |
| tree | ae79f3dfb8e031da51d38f0f095f89d7d23f3643 /lib/debugobjects.c | |
| parent | 00d59fde8532b2d42e80909d2e58678755e04da9 (diff) | |
| parent | 0f4991e8fd48987ae476a92cdee6bfec4aff31b8 (diff) | |
Merge branch 'akpm' (patches from Andrew)
Merge misc updates from Andrew Morton:
- large KASAN update to use arm's "software tag-based mode"
- a few misc things
- sh updates
- ocfs2 updates
- just about all of MM
* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (167 commits)
kernel/fork.c: mark 'stack_vm_area' with __maybe_unused
memcg, oom: notify on oom killer invocation from the charge path
mm, swap: fix swapoff with KSM pages
include/linux/gfp.h: fix typo
mm/hmm: fix memremap.h, move dev_page_fault_t callback to hmm
hugetlbfs: Use i_mmap_rwsem to fix page fault/truncate race
hugetlbfs: use i_mmap_rwsem for more pmd sharing synchronization
memory_hotplug: add missing newlines to debugging output
mm: remove __hugepage_set_anon_rmap()
include/linux/vmstat.h: remove unused page state adjustment macro
mm/page_alloc.c: allow error injection
mm: migrate: drop unused argument of migrate_page_move_mapping()
blkdev: avoid migration stalls for blkdev pages
mm: migrate: provide buffer_migrate_page_norefs()
mm: migrate: move migrate_page_lock_buffers()
mm: migrate: lock buffers before migrate_page_move_mapping()
mm: migration: factor out code to compute expected number of page references
mm, page_alloc: enable pcpu_drain with zone capability
kmemleak: add config to select auto scan
mm/page_alloc.c: don't call kasan_free_pages() at deferred mem init
...
Diffstat (limited to 'lib/debugobjects.c')
| -rw-r--r-- | lib/debugobjects.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/lib/debugobjects.c b/lib/debugobjects.c index 14afeeb7d6ef..55437fd5128b 100644 --- a/lib/debugobjects.c +++ b/lib/debugobjects.c | |||
| @@ -1131,11 +1131,10 @@ static int __init debug_objects_replace_static_objects(void) | |||
| 1131 | } | 1131 | } |
| 1132 | 1132 | ||
| 1133 | /* | 1133 | /* |
| 1134 | * When debug_objects_mem_init() is called we know that only | 1134 | * debug_objects_mem_init() is now called early that only one CPU is up |
| 1135 | * one CPU is up, so disabling interrupts is enough | 1135 | * and interrupts have been disabled, so it is safe to replace the |
| 1136 | * protection. This avoids the lockdep hell of lock ordering. | 1136 | * active object references. |
| 1137 | */ | 1137 | */ |
| 1138 | local_irq_disable(); | ||
| 1139 | 1138 | ||
| 1140 | /* Remove the statically allocated objects from the pool */ | 1139 | /* Remove the statically allocated objects from the pool */ |
| 1141 | hlist_for_each_entry_safe(obj, tmp, &obj_pool, node) | 1140 | hlist_for_each_entry_safe(obj, tmp, &obj_pool, node) |
| @@ -1156,7 +1155,6 @@ static int __init debug_objects_replace_static_objects(void) | |||
| 1156 | cnt++; | 1155 | cnt++; |
| 1157 | } | 1156 | } |
| 1158 | } | 1157 | } |
| 1159 | local_irq_enable(); | ||
| 1160 | 1158 | ||
| 1161 | pr_debug("%d of %d active objects replaced\n", | 1159 | pr_debug("%d of %d active objects replaced\n", |
| 1162 | cnt, obj_pool_used); | 1160 | cnt, obj_pool_used); |
