Re: [PATCH] mm/hugetable.c: align some prints

From: Greg KH
Date: Tue Oct 27 2020 - 02:17:54 EST


On Mon, Oct 26, 2020 at 05:23:43PM -0700, Mike Kravetz wrote:
> On 10/9/20 9:23 AM, Hui Su wrote:
> > in old code, it shows like:
> > Node 0 ShmemHugePages: 0 kB
> > Node 0 ShmemPmdMapped: 0 kB
> > Node 0 FileHugePages: 0 kB
> > Node 0 FilePmdMapped: 0 kB
> > Node 0 HugePages_Total: 0
> > Node 0 HugePages_Free: 0
> > Node 0 HugePages_Surp: 0
> >
> > which is not align. So we align it.
> >
> > Signed-off-by: Hui Su <sh_def@xxxxxxx>
>
> Apologies for the late reply.
>
> I assume you you just want to make the output look better. Correct?
>
> To be honest, I am not sure about the policy for changing the output
> of sysfs files. My preference would be to not change the output. Why?
> When the output is changed there is always the possibility that someone
> may have written code that depends on the current format. It looks like
> the output has been misaligned since the day the code was first written.
>
> This code was recently changed to use sysfs_emit_at() instead of
> sprintf(). At that time Greg noted that this also violates the sysfs
> rule of one value per file. So, it appears there may be a bigger issue
> than alignment.
>
> Greg,
> Is it OK to break up these sysfs files to be one value per file if they
> contained multiple values from day 1 of their existence? I would prefer
> not to touch them in case some is depending on current format.

You should create multiple files, with a different name, and then remove
this file. Any tool that uses sysfs should be able to handle a file
going away, don't change the format of the data in the file, otherwise
there's no way for anyone to know what is happening.

thanks,

greg k-h