Re: [PATCH 1/2] sysfs: Add crash_notes_size to export percpu notesize

From: Simon Horman
Date: Fri Mar 29 2013 - 00:05:07 EST


On Fri, Mar 29, 2013 at 11:50:35AM +0800, Zhang Yanfei wrote:
> Hi, simon
>
> I forgot to add your email in the CC, could you please help
> reviewing this patch since I will send the kexec-tools patch
> if this patch is accepted.
>
> Thanks
> Zhang
>
> ä 2013å03æ28æ 16:15, Zhang Yanfei åé:
> > For percpu notes, we are exporting only address and not size. So
> > the userspace tool kexec-tools is putting an upper limit of 1024
> > and putting the value in p_memsz and p_filesz fields. So the patch
> > add the new sysfile crash_notes_size to export the exact percpu
> > note size and let the kexec-tools parse it intead of using 1024.
> >
> > The idea came from Vivek Goyal. And a later patch will be sent to
> > kexec-tools to let it parse the size.

Acked-by: Simon Horman <horms@xxxxxxxxxxxx>

> >
> > Cc: Greg KH <gregkh@xxxxxxxxxxxxxxxxxxx>
> > Cc: "Eric W. Biederman" <ebiederm@xxxxxxxxxxxx>
> > Cc: Vivek Goyal <vgoyal@xxxxxxxxxx>
> > Signed-off-by: Zhang Yanfei <zhangyanfei@xxxxxxxxxxxxxx>
> > ---
> > drivers/base/cpu.c | 14 ++++++++++++++
> > 1 files changed, 14 insertions(+), 0 deletions(-)
> >
> > diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c
> > index fb10728..a55b590 100644
> > --- a/drivers/base/cpu.c
> > +++ b/drivers/base/cpu.c
> > @@ -132,6 +132,17 @@ static ssize_t show_crash_notes(struct device *dev, struct device_attribute *att
> > return rc;
> > }
> > static DEVICE_ATTR(crash_notes, 0400, show_crash_notes, NULL);
> > +
> > +static ssize_t show_crash_notes_size(struct device *dev,
> > + struct device_attribute *attr,
> > + char *buf)
> > +{
> > + ssize_t rc;
> > +
> > + rc = sprintf(buf, "%lu\n", sizeof(note_buf_t));
> > + return rc;
> > +}
> > +static DEVICE_ATTR(crash_notes_size, 0400, show_crash_notes_size, NULL);
> > #endif
> >
> > /*
> > @@ -259,6 +270,9 @@ int __cpuinit register_cpu(struct cpu *cpu, int num)
> > #ifdef CONFIG_KEXEC
> > if (!error)
> > error = device_create_file(&cpu->dev, &dev_attr_crash_notes);
> > + if (!error)
> > + error = device_create_file(&cpu->dev,
> > + &dev_attr_crash_notes_size);
> > #endif
> > return error;
> > }
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/