Re: [PATCH 1/2] mm: introduce page reference manipulation functions

From: Michal Nazarewicz
Date: Tue Nov 10 2015 - 10:59:07 EST


On Mon, Nov 09 2015, Joonsoo Kim wrote:
> Success of CMA allocation largely depends on success of migration
> and key factor of it is page reference count. Until now, page reference
> is manipulated by direct calling atomic functions so we cannot follow up
> who and where manipulate it. Then, it is hard to find actual reason
> of CMA allocation failure. CMA allocation should be guaranteed to succeed
> so finding offending place is really important.
>
> In this patch, call sites where page reference is manipulated are converted
> to introduced wrapper function. This is preparation step to add tracepoint
> to each page reference manipulation function. With this facility, we can
> easily find reason of CMA allocation failure. There is no functional change
> in this patch.
>
> Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>

Acked-by: Michal Nazarewicz <mina86@xxxxxxxxxx>

> ---
> arch/mips/mm/gup.c | 2 +-
> arch/powerpc/mm/mmu_context_hash64.c | 3 +-
> arch/powerpc/mm/pgtable_64.c | 2 +-
> arch/x86/mm/gup.c | 2 +-
> drivers/block/aoe/aoecmd.c | 4 +-
> drivers/net/ethernet/freescale/gianfar.c | 2 +-
> drivers/net/ethernet/intel/fm10k/fm10k_main.c | 2 +-
> drivers/net/ethernet/intel/igb/igb_main.c | 2 +-
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 2 +-
> drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 2 +-
> drivers/net/ethernet/mellanox/mlx4/en_rx.c | 7 +--
> drivers/net/ethernet/sun/niu.c | 2 +-
> include/linux/mm.h | 21 ++-----
> include/linux/page_ref.h | 76 +++++++++++++++++++++++
> include/linux/pagemap.h | 19 +-----
> mm/huge_memory.c | 6 +-
> mm/internal.h | 5 --
> mm/memory_hotplug.c | 4 +-
> mm/migrate.c | 10 +--
> mm/page_alloc.c | 6 +-
> mm/vmscan.c | 6 +-
> 21 files changed, 114 insertions(+), 71 deletions(-)
> create mode 100644 include/linux/page_ref.h
>

--
Best regards, _ _
.o. | Liege of Serenely Enlightened Majesty of o' \,=./ `o
..o | Computer Science, ããã âmina86â ãããããã (o o)
ooo +--<mpn@xxxxxxxxxx>--<xmpp:mina86@xxxxxxxxxx>-----ooO--(_)--Ooo--
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/