* + memcg-fix-thresholds-for-32b-architectures-fix-fix.patch added to -mm tree
@ 2015-11-03 23:32 akpm
2015-11-04 9:18 ` Michal Hocko
0 siblings, 1 reply; 5+ messages in thread
From: akpm @ 2015-11-03 23:32 UTC (permalink / raw)
To: akpm, ben, hannes, mhocko, vdavydov, mm-commits
The patch titled
Subject: memcg-fix-thresholds-for-32b-architectures-fix-fix
has been added to the -mm tree. Its filename is
memcg-fix-thresholds-for-32b-architectures-fix-fix.patch
This patch should soon appear at
http://ozlabs.org/~akpm/mmots/broken-out/memcg-fix-thresholds-for-32b-architectures-fix-fix.patch
and later at
http://ozlabs.org/~akpm/mmotm/broken-out/memcg-fix-thresholds-for-32b-architectures-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@linux-foundation.org>
Subject: memcg-fix-thresholds-for-32b-architectures-fix-fix
don't attempt to inline mem_cgroup_usage()
The compiler ignores the inline anwyay. And __always_inlining it adds 600
bytes of goop to the .o file.
Cc: Ben Hutchings <ben@decadent.org.uk>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Vladimir Davydov <vdavydov@virtuozzo.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
mm/memcontrol.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff -puN mm/memcontrol.c~memcg-fix-thresholds-for-32b-architectures-fix-fix mm/memcontrol.c
--- a/mm/memcontrol.c~memcg-fix-thresholds-for-32b-architectures-fix-fix
+++ a/mm/memcontrol.c
@@ -2801,7 +2801,7 @@ static unsigned long tree_stat(struct me
return val;
}
-static inline unsigned long mem_cgroup_usage(struct mem_cgroup *memcg, bool swap)
+static unsigned long mem_cgroup_usage(struct mem_cgroup *memcg, bool swap)
{
unsigned long val;
_
Patches currently in -mm which might be from akpm@linux-foundation.org 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.patch
slub-optimize-bulk-slowpath-free-by-detached-freelist-fix.patch
uaccess-reimplement-probe_kernel_address-using-probe_kernel_read.patch
uaccess-reimplement-probe_kernel_address-using-probe_kernel_read-fix.patch
uaccess-reimplement-probe_kernel_address-using-probe_kernel_read-fix-fix.patch
mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-fix.patch
mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-checkpatch-fixes.patch
mm-page_alloc-only-enforce-watermarks-for-order-0-allocations-fix-fix.patch
mm-fix-declarations-of-nr-delta-and-nr_pagecache_reclaimable-fix.patch
mm-oom_kill-fix-the-wrong-task-mm-==-mm-checks-in-oom_kill_process-fix.patch
include-linux-mmzoneh-reflow-comment.patch
mm-fs-introduce-mapping_gfp_constraint-checkpatch-fixes.patch
mm-vmstatc-uninline-node_page_state.patch
mm-vmstatc-uninline-node_page_state-fix.patch
mm-cmac-suppress-warning.patch
memcg-fix-thresholds-for-32b-architectures-fix-fix.patch
kasan-various-fixes-in-documentation-checkpatch-fixes.patch
mm-slub-kasan-enable-user-tracking-by-default-with-kasan=y-fix.patch
zsmalloc-add-comments-for-inuse-to-zspage-v2-fix.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-prepare-page_referenced-and-page_idle-to-new-thp-refcounting-checkpatch-fixes.patch
mm-increase-swap_cluster_max-to-batch-tlb-flushes-fix-fix.patch
include-linux-compiler-gcch-improve-__visible-documentation.patch
fs-jffs2-wbufc-remove-stray-semicolon.patch
lib-documentation-synchronize-%p-formatting-documentation-fix-fix.patch
rbtree-clarify-documentation-of-rbtree_postorder_for_each_entry_safe-fix.patch
dma-mapping-tidy-up-dma_parms-default-handling-fix.patch
panic-release-stale-console-lock-to-always-get-the-logbuf-printed-out-fix.patch
linux-next-rejects.patch
mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-nvem-fix.patch
mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-arm-fix.patch
mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-arm-fix-fix.patch
net-ipv4-routec-prevent-oops.patch
remove-abs64.patch
remove-abs64-fix.patch
remove-abs64-fix-fix.patch
remove-abs64-fix-fix-fix.patch
do_shared_fault-check-that-mmap_sem-is-held.patch
kernel-forkc-export-kernel_thread-to-modules.patch
slab-leaks3-default-y.patch
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: + memcg-fix-thresholds-for-32b-architectures-fix-fix.patch added to -mm tree
2015-11-03 23:32 + memcg-fix-thresholds-for-32b-architectures-fix-fix.patch added to -mm tree akpm
@ 2015-11-04 9:18 ` Michal Hocko
2015-11-06 2:31 ` Andrew Morton
0 siblings, 1 reply; 5+ messages in thread
From: Michal Hocko @ 2015-11-04 9:18 UTC (permalink / raw)
To: akpm; +Cc: ben, hannes, vdavydov, mm-commits, linux-mm
On Tue 03-11-15 15:32:11, Andrew Morton wrote:
> From: Andrew Morton <akpm@linux-foundation.org>
> Subject: memcg-fix-thresholds-for-32b-architectures-fix-fix
>
> don't attempt to inline mem_cgroup_usage()
>
> The compiler ignores the inline anwyay. And __always_inlining it adds 600
> bytes of goop to the .o file.
I am not sure you whether you want to fold this into the original patch
but I would prefer this to be a separate one. Anyway it makes a good
sense. The only performance semi-sensitive path would be
__mem_cgroup_threshold but I seriously doubt a single function call
would make a measurable difference because memcg_check_events is rate
limited.
> Cc: Ben Hutchings <ben@decadent.org.uk>
> Cc: Johannes Weiner <hannes@cmpxchg.org>
> Cc: Michal Hocko <mhocko@kernel.org>
> Cc: Vladimir Davydov <vdavydov@virtuozzo.com>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Thanks!
> ---
>
> mm/memcontrol.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff -puN mm/memcontrol.c~memcg-fix-thresholds-for-32b-architectures-fix-fix mm/memcontrol.c
> --- a/mm/memcontrol.c~memcg-fix-thresholds-for-32b-architectures-fix-fix
> +++ a/mm/memcontrol.c
> @@ -2801,7 +2801,7 @@ static unsigned long tree_stat(struct me
> return val;
> }
>
> -static inline unsigned long mem_cgroup_usage(struct mem_cgroup *memcg, bool swap)
> +static unsigned long mem_cgroup_usage(struct mem_cgroup *memcg, bool swap)
> {
> unsigned long val;
>
> _
>
> Patches currently in -mm which might be from akpm@linux-foundation.org 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.patch
> slub-optimize-bulk-slowpath-free-by-detached-freelist-fix.patch
> uaccess-reimplement-probe_kernel_address-using-probe_kernel_read.patch
> uaccess-reimplement-probe_kernel_address-using-probe_kernel_read-fix.patch
> uaccess-reimplement-probe_kernel_address-using-probe_kernel_read-fix-fix.patch
> mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-fix.patch
> mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-checkpatch-fixes.patch
> mm-page_alloc-only-enforce-watermarks-for-order-0-allocations-fix-fix.patch
> mm-fix-declarations-of-nr-delta-and-nr_pagecache_reclaimable-fix.patch
> mm-oom_kill-fix-the-wrong-task-mm-==-mm-checks-in-oom_kill_process-fix.patch
> include-linux-mmzoneh-reflow-comment.patch
> mm-fs-introduce-mapping_gfp_constraint-checkpatch-fixes.patch
> mm-vmstatc-uninline-node_page_state.patch
> mm-vmstatc-uninline-node_page_state-fix.patch
> mm-cmac-suppress-warning.patch
> memcg-fix-thresholds-for-32b-architectures-fix-fix.patch
> kasan-various-fixes-in-documentation-checkpatch-fixes.patch
> mm-slub-kasan-enable-user-tracking-by-default-with-kasan=y-fix.patch
> zsmalloc-add-comments-for-inuse-to-zspage-v2-fix.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-prepare-page_referenced-and-page_idle-to-new-thp-refcounting-checkpatch-fixes.patch
> mm-increase-swap_cluster_max-to-batch-tlb-flushes-fix-fix.patch
> include-linux-compiler-gcch-improve-__visible-documentation.patch
> fs-jffs2-wbufc-remove-stray-semicolon.patch
> lib-documentation-synchronize-%p-formatting-documentation-fix-fix.patch
> rbtree-clarify-documentation-of-rbtree_postorder_for_each_entry_safe-fix.patch
> dma-mapping-tidy-up-dma_parms-default-handling-fix.patch
> panic-release-stale-console-lock-to-always-get-the-logbuf-printed-out-fix.patch
> linux-next-rejects.patch
> mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-nvem-fix.patch
> mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-arm-fix.patch
> mm-page_alloc-rename-__gfp_wait-to-__gfp_reclaim-arm-fix-fix.patch
> net-ipv4-routec-prevent-oops.patch
> remove-abs64.patch
> remove-abs64-fix.patch
> remove-abs64-fix-fix.patch
> remove-abs64-fix-fix-fix.patch
> do_shared_fault-check-that-mmap_sem-is-held.patch
> kernel-forkc-export-kernel_thread-to-modules.patch
> slab-leaks3-default-y.patch
--
Michal Hocko
SUSE Labs
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: + memcg-fix-thresholds-for-32b-architectures-fix-fix.patch added to -mm tree
2015-11-04 9:18 ` Michal Hocko
@ 2015-11-06 2:31 ` Andrew Morton
2015-11-06 9:52 ` Michal Hocko
2015-11-07 14:23 ` Sergey Senozhatsky
0 siblings, 2 replies; 5+ messages in thread
From: Andrew Morton @ 2015-11-06 2:31 UTC (permalink / raw)
To: Michal Hocko; +Cc: ben, hannes, vdavydov, linux-mm
On Wed, 4 Nov 2015 10:18:04 +0100 Michal Hocko <mhocko@kernel.org> wrote:
> On Tue 03-11-15 15:32:11, Andrew Morton wrote:
> > From: Andrew Morton <akpm@linux-foundation.org>
> > Subject: memcg-fix-thresholds-for-32b-architectures-fix-fix
> >
> > don't attempt to inline mem_cgroup_usage()
> >
> > The compiler ignores the inline anwyay. And __always_inlining it adds 600
> > bytes of goop to the .o file.
>
> I am not sure you whether you want to fold this into the original patch
> but I would prefer this to be a separate one.
I'm going to drop this - it was already marked inline and gcc just
ignores the inline anyway so shrug.
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: + memcg-fix-thresholds-for-32b-architectures-fix-fix.patch added to -mm tree
2015-11-06 2:31 ` Andrew Morton
@ 2015-11-06 9:52 ` Michal Hocko
2015-11-07 14:23 ` Sergey Senozhatsky
1 sibling, 0 replies; 5+ messages in thread
From: Michal Hocko @ 2015-11-06 9:52 UTC (permalink / raw)
To: Andrew Morton; +Cc: ben, hannes, vdavydov, linux-mm
On Thu 05-11-15 18:31:32, Andrew Morton wrote:
> On Wed, 4 Nov 2015 10:18:04 +0100 Michal Hocko <mhocko@kernel.org> wrote:
>
> > On Tue 03-11-15 15:32:11, Andrew Morton wrote:
> > > From: Andrew Morton <akpm@linux-foundation.org>
> > > Subject: memcg-fix-thresholds-for-32b-architectures-fix-fix
> > >
> > > don't attempt to inline mem_cgroup_usage()
> > >
> > > The compiler ignores the inline anwyay. And __always_inlining it adds 600
> > > bytes of goop to the .o file.
> >
> > I am not sure you whether you want to fold this into the original patch
> > but I would prefer this to be a separate one.
>
> I'm going to drop this - it was already marked inline and gcc just
> ignores the inline anyway so shrug.
gcc version 5.2.1 20151010 (Debian 5.2.1-22)
$ size mm/memcontrol.o mm/memcontrol.o.before
text data bss dec hex filename
35535 7908 64 43507 a9f3 mm/memcontrol.o
35762 7908 64 43734 aad6 mm/memcontrol.o.before
So it's only 227B but still. I think it is worth it.
--
Michal Hocko
SUSE Labs
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: + memcg-fix-thresholds-for-32b-architectures-fix-fix.patch added to -mm tree
2015-11-06 2:31 ` Andrew Morton
2015-11-06 9:52 ` Michal Hocko
@ 2015-11-07 14:23 ` Sergey Senozhatsky
1 sibling, 0 replies; 5+ messages in thread
From: Sergey Senozhatsky @ 2015-11-07 14:23 UTC (permalink / raw)
To: Andrew Morton; +Cc: Michal Hocko, ben, hannes, vdavydov, linux-mm
Hi,
On (11/05/15 18:31), Andrew Morton wrote:
> > On Tue 03-11-15 15:32:11, Andrew Morton wrote:
> > > From: Andrew Morton <akpm@linux-foundation.org>
> > > Subject: memcg-fix-thresholds-for-32b-architectures-fix-fix
> > >
> > > don't attempt to inline mem_cgroup_usage()
> > >
> > > The compiler ignores the inline anwyay. And __always_inlining it adds 600
> > > bytes of goop to the .o file.
> >
> > I am not sure you whether you want to fold this into the original patch
> > but I would prefer this to be a separate one.
>
> I'm going to drop this - it was already marked inline and gcc just
> ignores the inline anyway so shrug.
>
Just out of curiosity, seems that my gcc (5.2) is happy to inline
it (as of linux-next-20151106):
$ grep 'mem_cgroup_usage ' __ipa_build_log
Inlining page_counter_read into mem_cgroup_usage (always_inline).
Inlining page_counter_read into mem_cgroup_usage (always_inline).
Inlining mem_cgroup_is_root into mem_cgroup_usage (always_inline).
Inlining mem_cgroup_usage into mem_cgroup_read_u64 (always_inline).
Inlining mem_cgroup_usage into mem_cgroup_read_u64 (always_inline).
Inlining mem_cgroup_usage into __mem_cgroup_threshold (always_inline).
Inlining mem_cgroup_usage into __mem_cgroup_usage_unregister_event (always_inline).
Inlining mem_cgroup_usage into __mem_cgroup_usage_unregister_event (always_inline).
Inlining mem_cgroup_usage into __mem_cgroup_usage_register_event (always_inline).
Inlining mem_cgroup_usage into __mem_cgroup_usage_register_event (always_inline).
and the resulting vmlinux.o files
$ ./scripts/bloat-o-meter vmlinux.o.old vmlinux.o
add/remove: 1/0 grow/shrink: 0/4 up/down: 113/-351 (-238)
function old new delta
mem_cgroup_usage - 113 +113
__mem_cgroup_usage_unregister_event 409 331 -78
__mem_cgroup_threshold 529 447 -82
__mem_cgroup_usage_register_event 498 403 -95
mem_cgroup_read_u64 256 160 -96
-ss
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2015-11-07 14:24 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-03 23:32 + memcg-fix-thresholds-for-32b-architectures-fix-fix.patch added to -mm tree akpm
2015-11-04 9:18 ` Michal Hocko
2015-11-06 2:31 ` Andrew Morton
2015-11-06 9:52 ` Michal Hocko
2015-11-07 14:23 ` Sergey Senozhatsky
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.