linux/fs/pstore/internal.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2#ifndef __PSTORE_INTERNAL_H__
   3#define __PSTORE_INTERNAL_H__
   4
   5#include <linux/types.h>
   6#include <linux/time.h>
   7#include <linux/pstore.h>
   8
   9extern unsigned long kmsg_bytes;
  10
  11#ifdef CONFIG_PSTORE_FTRACE
  12extern void pstore_register_ftrace(void);
  13extern void pstore_unregister_ftrace(void);
  14ssize_t pstore_ftrace_combine_log(char **dest_log, size_t *dest_log_size,
  15                                  const char *src_log, size_t src_log_size);
  16#else
  17static inline void pstore_register_ftrace(void) {}
  18static inline void pstore_unregister_ftrace(void) {}
  19static inline ssize_t
  20pstore_ftrace_combine_log(char **dest_log, size_t *dest_log_size,
  21                          const char *src_log, size_t src_log_size)
  22{
  23        *dest_log_size = 0;
  24        return 0;
  25}
  26#endif
  27
  28#ifdef CONFIG_PSTORE_PMSG
  29extern void pstore_register_pmsg(void);
  30extern void pstore_unregister_pmsg(void);
  31#else
  32static inline void pstore_register_pmsg(void) {}
  33static inline void pstore_unregister_pmsg(void) {}
  34#endif
  35
  36extern struct pstore_info *psinfo;
  37
  38extern void     pstore_set_kmsg_bytes(int);
  39extern void     pstore_get_records(int);
  40extern void     pstore_get_backend_records(struct pstore_info *psi,
  41                                           struct dentry *root, int quiet);
  42extern int      pstore_put_backend_records(struct pstore_info *psi);
  43extern int      pstore_mkfile(struct dentry *root,
  44                              struct pstore_record *record);
  45extern void     pstore_record_init(struct pstore_record *record,
  46                                   struct pstore_info *psi);
  47
  48/* Called during pstore init/exit. */
  49int __init      pstore_init_fs(void);
  50void __exit     pstore_exit_fs(void);
  51
  52#endif
  53