RE: [RFC PATCH v4 4/6] mm: Add page table level flags to vm_flags

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

 



Hi Steve,

On Wed, 25 Mar 2020 2:45, Steve wrote:
> On Tue, 24 Mar 2020 21:45:32 +0800
> Zhenyu Ye <yezhenyu2@xxxxxxxxxx> wrote:
> 
> > --- a/include/trace/events/mmflags.h
> > +++ b/include/trace/events/mmflags.h
> > @@ -130,6 +130,16 @@ IF_HAVE_PG_IDLE(PG_idle,		"idle"		)
> >  #define IF_HAVE_VM_SOFTDIRTY(flag,name)
> >  #endif
> >
> > +#ifdef CONFIG_64BIT
> > +#define IF_HAVE_VM_LEVEL_PUD(flag,name)	{flag, name}
> > +#define IF_HAVE_VM_LEVEL_PMD(flag,name)	{flag, name}
> > +#define IF_HAVE_VM_LEVEL_PTE(flag,name)	{flag, name}
> > +#else
> > +#define IF_HAVE_VM_LEVEL_PUD(flag,name)
> > +#define IF_HAVE_VM_LEVEL_PMD(flag,name)
> > +#define IF_HAVE_VM_LEVEL_PTE(flag,name)
> > +#endif
> > +
> >  #define __def_vmaflag_names						\
> >  	{VM_READ,			"read"		},		\
> >  	{VM_WRITE,			"write"		},		\
> > @@ -161,7 +171,10 @@ IF_HAVE_VM_SOFTDIRTY(VM_SOFTDIRTY,
> 	"softdirty"	)		\
> >  	{VM_MIXEDMAP,			"mixedmap"	},		\
> >  	{VM_HUGEPAGE,			"hugepage"	},		\
> >  	{VM_NOHUGEPAGE,			"nohugepage"	},		\
> > -	{VM_MERGEABLE,			"mergeable"	}		\
> > +	{VM_MERGEABLE,			"mergeable"	},		\
> > +IF_HAVE_VM_LEVEL_PUD(VM_LEVEL_PUD,	"pud-level"	),		\
> > +IF_HAVE_VM_LEVEL_PMD(VM_LEVEL_PMD,	"pmd-level"	),		\
> > +IF_HAVE_VM_LEVEL_PTE(VM_LEVEL_PTE,	"pte-level"	)		\
> >
> 
> Have you tested this on 32bit? It looks like you'll get empty commas there.
> Perhaps the defines need to be:
> 
> #ifdef CONFIG_64BIT
> #define IF_HAVE_VM_LEVEL_PUD(flag,name)	{flag, name},
> #define IF_HAVE_VM_LEVEL_PMD(flag,name)	{flag, name},
> #define IF_HAVE_VM_LEVEL_PTE(flag,name)	{flag, name}
> #else
> #define IF_HAVE_VM_LEVEL_PUD(flag,name)
> #define IF_HAVE_VM_LEVEL_PMD(flag,name)
> #define IF_HAVE_VM_LEVEL_PTE(flag,name)
> #endif
> 
> And leave out the commas in the list.
> 
> -- Steve

Thanks for your review. I will fix this in next version, if I could still use vm_flags
at that time :).

Zhenyu





[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