[PATCH 9/9] fs: Add pstore filesystem
Markus Pargmann
mpa at pengutronix.de
Fri Dec 4 05:10:48 PST 2015
Hi,
On Wednesday 02 December 2015 21:37:13 Antony Pavlov wrote:
> On Wed, 2 Dec 2015 14:48:51 +0100
> Markus Pargmann <mpa at pengutronix.de> wrote:
>
> > pstore is a persistent storage filesystem used for RAMOOPS. It is used
> > to store console logs, panics, ftrace and other information in case of a
> > crash/panic/oops/reboot.
> >
> > pstore is implemented for barebox as a read-only filesystem at the
> > moment. It may be extended later on. The idea is to provide a way to
> > extract essential data from the last running kernel.
> >
> > Most of the code is copied from the kernel. However this is only a
> > lightweight implementation without real write support yet.
> >
> > Signed-off-by: Markus Pargmann <mpa at pengutronix.de>
> > ---
> > common/startup.c | 5 +
> > fs/Kconfig | 2 +
> > fs/Makefile | 1 +
> > fs/pstore/Kconfig | 88 ++++++++
> > fs/pstore/Makefile | 10 +
> > fs/pstore/fs.c | 280 +++++++++++++++++++++++++
> > fs/pstore/internal.h | 19 ++
> > fs/pstore/platform.c | 138 ++++++++++++
> > fs/pstore/ram.c | 507 +++++++++++++++++++++++++++++++++++++++++++++
> > fs/pstore/ram_core.c | 426 +++++++++++++++++++++++++++++++++++++
> > include/linux/pstore.h | 90 ++++++++
> > include/linux/pstore_ram.h | 87 ++++++++
> > 12 files changed, 1653 insertions(+)
> > create mode 100644 fs/pstore/Kconfig
> > create mode 100644 fs/pstore/Makefile
> > create mode 100644 fs/pstore/fs.c
> > create mode 100644 fs/pstore/internal.h
> > create mode 100644 fs/pstore/platform.c
> > create mode 100644 fs/pstore/ram.c
> > create mode 100644 fs/pstore/ram_core.c
> > create mode 100644 include/linux/pstore.h
> > create mode 100644 include/linux/pstore_ram.h
> >
> > diff --git a/common/startup.c b/common/startup.c
> > index 4a303b297aaf..093a23ba08c9 100644
> > --- a/common/startup.c
> > +++ b/common/startup.c
> > @@ -60,6 +60,11 @@ static int mount_root(void)
> > mount("none", "efivarfs", "/efivars", NULL);
> > }
> >
> > + if (IS_ENABLED(CONFIG_FS_PSTORE)) {
> > + mkdir("/pstore", 0);
> > + mount("none", "pstore", "/pstore", NULL);
> > + }
> > +
> > return 0;
> > }
> > fs_initcall(mount_root);
> > diff --git a/fs/Kconfig b/fs/Kconfig
> > index 9217bc81ea1e..5413a9295ccc 100644
> > --- a/fs/Kconfig
> > +++ b/fs/Kconfig
> > @@ -89,4 +89,6 @@ config FS_SMHFS
> > located on a debugging host connected to the target running
> > Barebox
> >
> > +source fs/pstore/Kconfig
> > +
> > endmenu
> > diff --git a/fs/Makefile b/fs/Makefile
> > index 46932057c1b7..590c068e6045 100644
> > --- a/fs/Makefile
> > +++ b/fs/Makefile
> > @@ -14,3 +14,4 @@ obj-$(CONFIG_FS_UIMAGEFS) += uimagefs.o
> > obj-$(CONFIG_FS_EFI) += efi.o
> > obj-$(CONFIG_FS_EFIVARFS) += efivarfs.o
> > obj-$(CONFIG_FS_SMHFS) += smhfs.o
> > +obj-y += pstore/
>
> Can we use
>
> obj-$(CONFIG_FS_PSTORE) += pstore/
>
> ?
Yes, changed it so that this Makefile uses the config symbol and
pstore/Makefile is unconditional then.
Best Regards,
Markus
>
> > diff --git a/fs/pstore/Kconfig b/fs/pstore/Kconfig
> > new file mode 100644
> > index 000000000000..2455b5629cb1
> > --- /dev/null
> > +++ b/fs/pstore/Kconfig
> > @@ -0,0 +1,88 @@
> > +menuconfig FS_PSTORE
> > + bool
> > + prompt "pstore fs support"
>
> --
> Best regards,
> Antony Pavlov
>
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.infradead.org/pipermail/barebox/attachments/20151204/278fd23e/attachment.sig>
More information about the barebox
mailing list