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

From: kbuild test robot
Date: Sat Mar 02 2019 - 18:06:56 EST


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

Attachment: .config.gz
Description: application/gzip