Message ID | 1551501538-4092-1-git-send-email-laoar.shao@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | mm: compaction: show gfp flag names in try_to_compact_pages tracepoint | expand |
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@lge.com> :::::: CC: Linus Torvalds <torvalds@linux-foundation.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
On Sun, Mar 3, 2019 at 7:04 AM kbuild test robot <lkp@intel.com> 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@lge.com> > :::::: CC: Linus Torvalds <torvalds@linux-foundation.org> > > --- > 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
On Sat 02-03-19 12:38:57, Yafang Shao wrote: > show the gfp flag names instead of the gfp_mask could make the trace > more convenient. Agreed > Signed-off-by: Yafang Shao <laoar.shao@gmail.com> Acked-by: Michal Hocko <mhocko@suse.com> > --- > include/trace/events/compaction.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/include/trace/events/compaction.h b/include/trace/events/compaction.h > index 6074eff..e66afb818 100644 > --- a/include/trace/events/compaction.h > +++ b/include/trace/events/compaction.h > @@ -189,9 +189,9 @@ > __entry->prio = prio; > ), > > - TP_printk("order=%d gfp_mask=0x%x priority=%d", > + TP_printk("order=%d gfp_mask=%s priority=%d", > __entry->order, > - __entry->gfp_mask, > + show_gfp_flags(__entry->gfp_mask), > __entry->prio) > ); > > -- > 1.8.3.1 >
On 3/2/19 5:38 AM, Yafang Shao wrote: > show the gfp flag names instead of the gfp_mask could make the trace > more convenient. > > Signed-off-by: Yafang Shao <laoar.shao@gmail.com> Acked-by: Vlastimil Babka <vbabka@suse.cz> > --- > include/trace/events/compaction.h | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/include/trace/events/compaction.h b/include/trace/events/compaction.h > index 6074eff..e66afb818 100644 > --- a/include/trace/events/compaction.h > +++ b/include/trace/events/compaction.h > @@ -189,9 +189,9 @@ > __entry->prio = prio; > ), > > - TP_printk("order=%d gfp_mask=0x%x priority=%d", > + TP_printk("order=%d gfp_mask=%s priority=%d", > __entry->order, > - __entry->gfp_mask, > + show_gfp_flags(__entry->gfp_mask), > __entry->prio) > ); > >
diff --git a/include/trace/events/compaction.h b/include/trace/events/compaction.h index 6074eff..e66afb818 100644 --- a/include/trace/events/compaction.h +++ b/include/trace/events/compaction.h @@ -189,9 +189,9 @@ __entry->prio = prio; ), - TP_printk("order=%d gfp_mask=0x%x priority=%d", + TP_printk("order=%d gfp_mask=%s priority=%d", __entry->order, - __entry->gfp_mask, + show_gfp_flags(__entry->gfp_mask), __entry->prio) );
show the gfp flag names instead of the gfp_mask could make the trace more convenient. Signed-off-by: Yafang Shao <laoar.shao@gmail.com> --- include/trace/events/compaction.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)