Re: [PATCH] mm: compaction: show gfp flag names in try_to_compact_pages tracepoint

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Mar 3, 2019 at 7:04 AM kbuild test robot <lkp@xxxxxxxxx> wrote:
>
> Hi Yafang,
>
> Thank you for the patch! Perhaps something to improve:
>
> [auto build test WARNING on tip/perf/core]
> [also build test WARNING on v5.0-rc8 next-20190301]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
>
> url:    https://github.com/0day-ci/linux/commits/Yafang-Shao/mm-compaction-show-gfp-flag-names-in-try_to_compact_pages-tracepoint/20190302-212241
> reproduce:
>         # apt-get install sparse
>         make ARCH=x86_64 allmodconfig
>         make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
>
> All warnings (new ones prefixed by >>):
>
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
> >> include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>
> sparse warnings: (new ones prefixed by >>)
>
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast from restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: incorrect type in argument 3 (different base types)
> >> include/trace/events/compaction.h:171:1: sparse:    expected unsigned long flags
> >> include/trace/events/compaction.h:171:1: sparse:    got restricted gfp_t [usertype] gfp_mask
>    include/trace/events/compaction.h:171:1: sparse: warning: cast to restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: cast to restricted gfp_t
>    include/trace/events/compaction.h:171:1: sparse: warning: restricted gfp_t degrades to integer
>    include/trace/events/compaction.h:171:1: sparse: warning: restricted gfp_t degrades to integer
>    include/linux/gfp.h:318:27: sparse: warning: restricted gfp_t degrades to integer
>    mm/compaction.c:1750:39: sparse: warning: incorrect type in initializer (different base types)
>    mm/compaction.c:1750:39: sparse:    expected int may_perform_io
>    mm/compaction.c:1750:39: sparse:    got restricted gfp_t
>    mm/compaction.c:351:13: sparse: warning: context imbalance in 'compact_trylock_irqsave' - wrong count at exit
>    include/linux/spinlock.h:384:9: sparse: warning: context imbalance in 'compact_unlock_should_abort' - unexpected unlock
>    mm/compaction.c:545:39: sparse: warning: context imbalance in 'isolate_freepages_block' - unexpected unlock
>    mm/compaction.c:943:53: sparse: warning: context imbalance in 'isolate_migratepages_block' - unexpected unlock
>
> vim +171 include/trace/events/compaction.h
>
> b7aba698 Mel Gorman      2011-01-13  170
> 837d026d Joonsoo Kim     2015-02-11 @171  TRACE_EVENT(mm_compaction_try_to_compact_pages,
> 837d026d Joonsoo Kim     2015-02-11  172
> 837d026d Joonsoo Kim     2015-02-11  173        TP_PROTO(
> 837d026d Joonsoo Kim     2015-02-11  174                int order,
> 837d026d Joonsoo Kim     2015-02-11  175                gfp_t gfp_mask,
> a5508cd8 Vlastimil Babka 2016-07-28  176                int prio),
> 837d026d Joonsoo Kim     2015-02-11  177
> a5508cd8 Vlastimil Babka 2016-07-28  178        TP_ARGS(order, gfp_mask, prio),
> 837d026d Joonsoo Kim     2015-02-11  179
> 837d026d Joonsoo Kim     2015-02-11  180        TP_STRUCT__entry(
> 837d026d Joonsoo Kim     2015-02-11  181                __field(int, order)
> 837d026d Joonsoo Kim     2015-02-11  182                __field(gfp_t, gfp_mask)
> a5508cd8 Vlastimil Babka 2016-07-28  183                __field(int, prio)
> 837d026d Joonsoo Kim     2015-02-11  184        ),
> 837d026d Joonsoo Kim     2015-02-11  185
> 837d026d Joonsoo Kim     2015-02-11  186        TP_fast_assign(
> 837d026d Joonsoo Kim     2015-02-11  187                __entry->order = order;
> 837d026d Joonsoo Kim     2015-02-11  188                __entry->gfp_mask = gfp_mask;
> a5508cd8 Vlastimil Babka 2016-07-28  189                __entry->prio = prio;
> 837d026d Joonsoo Kim     2015-02-11  190        ),
> 837d026d Joonsoo Kim     2015-02-11  191
> 91811e0d Yafang Shao     2019-03-02  192        TP_printk("order=%d gfp_mask=%s priority=%d",
> 837d026d Joonsoo Kim     2015-02-11  193                __entry->order,
> 91811e0d Yafang Shao     2019-03-02  194                show_gfp_flags(__entry->gfp_mask),
> a5508cd8 Vlastimil Babka 2016-07-28  195                __entry->prio)
> 837d026d Joonsoo Kim     2015-02-11  196  );
> 837d026d Joonsoo Kim     2015-02-11  197
>
> :::::: The code at line 171 was first introduced by commit
> :::::: 837d026d560c5ef26abeca0441713d82e4e82cad mm/compaction: more trace to understand when/why compaction start/finish
>
> :::::: TO: Joonsoo Kim <iamjoonsoo.kim@xxxxxxx>
> :::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
>
> ---
> 0-DAY kernel test infrastructure                Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Seems this warning isn't introduced by my patch.
My patch is fine.

I will try to investigate how this warning is introduced.

Thanks
Yafang




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux