2018-11-29 23:36:00

by Kees Cook

[permalink] [raw]
Subject: Re: [PATCH v5 0/5] pstore: ramoops: support multiple pmsg instances

On Sun, Feb 26, 2017 at 5:54 PM Nobuhiro Iwamatsu
<[email protected]> wrote:
> The following series implements multiple pmsg. This feature allows userspace
> program to control individual content aging or priority.

I'd like to take a look at this series again, if you're still
interested in upstreaming it. :) There were a lot of things that
needed refactoring in pstore to sanely deal with this, and I think
we're there now. Is this still desired?

Thanks,

-Kees

>
> If a pstore backend module(e.g. ramoops) requires the multiple pmsg instances
> when registering itself to pstore, multiple /dev/pmsg[ID] are created. Writes
> to each /dev/pmsg[ID] are isolated each other. After reboot, the contents are
> available in /sys/fs/pstore/pmsg-[backend]-[ID].
>
> In addition, we add multiple pmsg support for ramoops. We can specify multiple
> pmsg area size by its module parameter as follows.
>
> pmsg_size=0x1000,0x2000,...
>
> I did check the operation of this feature on CycloneV (socfpga) Helio board.
>
> v5:
> Add commit: "pstore: Change parameter of ramoops_free_przs()"
> - I forgot addition to previous patch series.
> Update commit: "pstore: support multiple pmsg instances"
> - Fix comment.
> - Fix initialization of num_pmsg.
>
> v4:
> Rebase to 4.10-rc5
> The following patches have been removed from this series as similar functions
> were modified by other commit.
> - pstore: Replace four kzalloc() calls by kcalloc() in ramoops_init_przs()
> - pstore: Change parameter of ramoops_free_przs()
> - pstore: Rename 'przs' to 'dprzs' in struct ramoops_context
> - ramoops: Rename ramoops_init_prz() to ramoops_init_dprzs()
>
> v3:
> Rebase to v4.8.
> Split patch.
> merged device_create().
> Remove Blank lines.
> Update documentiation of DT binding.
> Update parsing function of ramoops_pmsg_size, add NULL termination.
> Update module parameters for pmsg_size list.
>
> Hiraku Toyooka (2):
> pstore: support multiple pmsg instances
> selftests/pstore: add testcases for multiple pmsg instances
>
> Nobuhiro Iwamatsu (3):
> pstore: Change parameter of ramoops_free_przs()
> ramoops: Add __ramoops_init_prz() as generic function
> ramoops: support multiple pmsg instances
>
> Documentation/admin-guide/ramoops.rst | 22 ++
> .../bindings/reserved-memory/ramoops.txt | 6 +-
> fs/pstore/pmsg.c | 23 +-
> fs/pstore/ram.c | 317 ++++++++++++++++-----
> include/linux/pstore.h | 1 +
> include/linux/pstore_ram.h | 8 +-
> tools/testing/selftests/pstore/common_tests | 21 +-
> .../selftests/pstore/pstore_post_reboot_tests | 27 +-
> tools/testing/selftests/pstore/pstore_tests | 14 +-
> 9 files changed, 342 insertions(+), 97 deletions(-)
>
> --
> 2.11.0
>


--
Kees Cook


2018-12-03 03:38:40

by Nobuhiro Iwamatsu

[permalink] [raw]
Subject: Re: [PATCH v5 0/5] pstore: ramoops: support multiple pmsg instances

# Remove [email protected] from To.

Hi,

I am already leaving Hitachi.
However, I would like to merge these patches into the kernel. I will
resume work.

Best regards,
Nobuhiro

2018年11月30日(金) 8:33 Kees Cook <[email protected]>:
>
> On Sun, Feb 26, 2017 at 5:54 PM Nobuhiro Iwamatsu
> <[email protected]> wrote:
> > The following series implements multiple pmsg. This feature allows userspace
> > program to control individual content aging or priority.
>
> I'd like to take a look at this series again, if you're still
> interested in upstreaming it. :) There were a lot of things that
> needed refactoring in pstore to sanely deal with this, and I think
> we're there now. Is this still desired?
>
> Thanks,
>
> -Kees
>
> >
> > If a pstore backend module(e.g. ramoops) requires the multiple pmsg instances
> > when registering itself to pstore, multiple /dev/pmsg[ID] are created. Writes
> > to each /dev/pmsg[ID] are isolated each other. After reboot, the contents are
> > available in /sys/fs/pstore/pmsg-[backend]-[ID].
> >
> > In addition, we add multiple pmsg support for ramoops. We can specify multiple
> > pmsg area size by its module parameter as follows.
> >
> > pmsg_size=0x1000,0x2000,...
> >
> > I did check the operation of this feature on CycloneV (socfpga) Helio board.
> >
> > v5:
> > Add commit: "pstore: Change parameter of ramoops_free_przs()"
> > - I forgot addition to previous patch series.
> > Update commit: "pstore: support multiple pmsg instances"
> > - Fix comment.
> > - Fix initialization of num_pmsg.
> >
> > v4:
> > Rebase to 4.10-rc5
> > The following patches have been removed from this series as similar functions
> > were modified by other commit.
> > - pstore: Replace four kzalloc() calls by kcalloc() in ramoops_init_przs()
> > - pstore: Change parameter of ramoops_free_przs()
> > - pstore: Rename 'przs' to 'dprzs' in struct ramoops_context
> > - ramoops: Rename ramoops_init_prz() to ramoops_init_dprzs()
> >
> > v3:
> > Rebase to v4.8.
> > Split patch.
> > merged device_create().
> > Remove Blank lines.
> > Update documentiation of DT binding.
> > Update parsing function of ramoops_pmsg_size, add NULL termination.
> > Update module parameters for pmsg_size list.
> >
> > Hiraku Toyooka (2):
> > pstore: support multiple pmsg instances
> > selftests/pstore: add testcases for multiple pmsg instances
> >
> > Nobuhiro Iwamatsu (3):
> > pstore: Change parameter of ramoops_free_przs()
> > ramoops: Add __ramoops_init_prz() as generic function
> > ramoops: support multiple pmsg instances
> >
> > Documentation/admin-guide/ramoops.rst | 22 ++
> > .../bindings/reserved-memory/ramoops.txt | 6 +-
> > fs/pstore/pmsg.c | 23 +-
> > fs/pstore/ram.c | 317 ++++++++++++++++-----
> > include/linux/pstore.h | 1 +
> > include/linux/pstore_ram.h | 8 +-
> > tools/testing/selftests/pstore/common_tests | 21 +-
> > .../selftests/pstore/pstore_post_reboot_tests | 27 +-
> > tools/testing/selftests/pstore/pstore_tests | 14 +-
> > 9 files changed, 342 insertions(+), 97 deletions(-)
> >
> > --
> > 2.11.0
> >
>
>
> --
> Kees Cook



--
Nobuhiro Iwamatsu
iwamatsu at {nigauri.org / debian.org}
GPG ID: 40AD1FA6