The patch titled Subject: mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix has been added to the -mm tree. Its filename is mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix really suppress the __must_check warning Cc: Johannes Weiner <hannes@xxxxxxxxxxx> Cc: Michal Hocko <mhocko@xxxxxxxxxx> Cc: Vladimir Davydov <vdavydov@xxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/memcontrol.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff -puN mm/memcontrol.c~mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix mm/memcontrol.c --- a/mm/memcontrol.c~mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix +++ a/mm/memcontrol.c @@ -851,6 +851,9 @@ static struct mem_cgroup *get_mem_cgroup return memcg; } +/* Move this to compiler.h if it proves worthy */ +#define defeat_must_check(expr) do { if (expr) ; } while (0) + /** * mem_cgroup_iter - iterate over memory cgroup hierarchy * @root: hierarchy root @@ -915,7 +918,7 @@ struct mem_cgroup *mem_cgroup_iter(struc * might block it. So we clear iter->position right * away. */ - (void)cmpxchg(&iter->position, pos, NULL); + defeat_must_check(cmpxchg(&iter->position, pos, NULL)); } } @@ -967,7 +970,7 @@ struct mem_cgroup *mem_cgroup_iter(struc * thread, so check that the value hasn't changed since we read * it to avoid reclaiming from the same cgroup twice. */ - (void)cmpxchg(&iter->position, pos, memcg); + defeat_must_check(cmpxchg(&iter->position, pos, memcg)); /* * pairs with css_tryget when dereferencing iter->position _ Patches currently in -mm which might be from akpm@xxxxxxxxxxxxxxxxxxxx are arch-alpha-kernel-systblss-remove-debug-check.patch drivers-gpu-drm-i915-intel_spritec-fix-build.patch drivers-gpu-drm-i915-intel_tvc-fix-build.patch mm-memcontrol-fix-possible-memcg-leak-due-to-interrupted-reclaim-fix-fix.patch ocfs2-fix-ip_unaligned_aio-deadlock-with-dio-work-queue-fix.patch include-linux-dcacheh-remove-semicolons-from-hash_len_declare.patch mm.patch account-certain-kmem-allocations-to-memcg-checkpatch-fixes.patch mm-mmapc-remove-redundant-local-variables-for-may_expand_vm-fix.patch include-define-__phys_to_pfn-as-phys_pfn-fix.patch mempolicy-convert-the-shared_policy-lock-to-a-rwlock-fix.patch mempolicy-convert-the-shared_policy-lock-to-a-rwlock-fix-2.patch mm-zonelist-enumerate-zonelists-array-index-checkpatch-fixes.patch mm-zonelist-enumerate-zonelists-array-index-fix.patch mm-get-rid-of-__alloc_pages_high_priority-checkpatch-fixes.patch fs-block_devc-bdev_write_page-use-blk_queue_enter-gfp_noio.patch arm64-mm-support-arch_mmap_rnd_bits-fix.patch ksm-introduce-ksm_max_page_sharing-per-page-deduplication-limit-fix.patch ksm-introduce-ksm_max_page_sharing-per-page-deduplication-limit-fix-2.patch page-flags-define-pg_locked-behavior-on-compound-pages-fix.patch mm-rework-mapcount-accounting-to-enable-4k-mapping-of-thps-fix.patch mm-hwpoison-adjust-for-new-thp-refcounting-fix.patch mm-prepare-page_referenced-and-page_idle-to-new-thp-refcounting-checkpatch-fixes.patch mm-printk-introduce-new-format-string-for-flags-fix-2.patch mm-support-madvisemadv_free-fix-2-fix.patch arch-uapi-asm-mmanh-let-madv_free-have-same-value-for-all-architectures-fix.patch arch-uapi-asm-mmanh-let-madv_free-have-same-value-for-all-architectures-fix-fix-2.patch arch-uapi-asm-mmanh-let-madv_free-have-same-value-for-all-architectures-fix-fix-2-fix-3.patch mm-oom-rework-oom-detection-checkpatch-fixes.patch mm-use-watermak-checks-for-__gfp_repeat-high-order-allocations-checkpatch-fixes.patch sched-add-schedule_timeout_idle.patch mm-oom-introduce-oom-reaper-fix-fix.patch mm-oom-introduce-oom-reaper-fix-fix-2.patch mm-oom-introduce-oom-reaper-checkpatch-fixes.patch mm-oom-introduce-oom-reaper-fix-3.patch mm-oom-introduce-oom-reaper-fix-4-fix.patch kernel-stop_machinec-remove-config_smp-dependencies.patch kernel-stop_machinec-remove-config_smp-dependencies-fix.patch lib-vsprintfc-expand-field_width-to-24-bits-fix.patch lib-test_printfc-test-dentry-printing-fix.patch printk-help-pr_debug-and-pr_devel-to-optimize-out-arguments-fix.patch printk-nmi-warn-when-some-message-has-been-lost-in-nmi-context-fix.patch ptrace-task_stopped_codeptrace-=-true-cant-see-task_stopped-task-fix.patch ptrace-use-fsuid-fsgid-effective-creds-for-fs-access-checks-fix.patch ubsan-run-time-undefined-behavior-sanity-checker-fix.patch ubsan-run-time-undefined-behavior-sanity-checker-fix-3.patch linux-next-rejects.patch include-linux-propertyh-fix-build-issues-with-gcc-444.patch include-linux-propertyh-fix-build-issues-with-gcc-444-fix.patch fs-overlayfs-superc-needs-pagemaph.patch fs-adfs-adfsh-tidy-up-comments.patch do_shared_fault-check-that-mmap_sem-is-held.patch kernel-forkc-export-kernel_thread-to-modules.patch slab-leaks3-default-y.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html