Commit 67a101f5 authored by Anton Vorontsov's avatar Anton Vorontsov Committed by Greg Kroah-Hartman

pstore: Headers should include all stuff they use

Headers should really include all the needed prototypes, types, defines
etc. to be self-contained. This is a long-standing issue, but apparently
the new tracing code unearthed it (SMP=n is also a prerequisite):

In file included from fs/pstore/internal.h:4:0,
                 from fs/pstore/ftrace.c:21:
include/linux/pstore.h:43:15: error: field ‘read_mutex’ has incomplete type

While at it, I also added the following:

linux/types.h -> size_t, phys_addr_t, uXX and friends
linux/spinlock.h -> spinlock_t
linux/errno.h -> Exxxx
linux/time.h -> struct timespec (struct passed by value)
struct module and rs_control forward declaration (passed via pointers).
Signed-off-by: default avatarAnton Vorontsov <anton.vorontsov@linaro.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent bfce7cf6
#ifndef __PSTORE_INTERNAL_H__ #ifndef __PSTORE_INTERNAL_H__
#define __PSTORE_INTERNAL_H__ #define __PSTORE_INTERNAL_H__
#include <linux/types.h>
#include <linux/time.h>
#include <linux/pstore.h> #include <linux/pstore.h>
#if NR_CPUS <= 2 && defined(CONFIG_ARM_THUMB) #if NR_CPUS <= 2 && defined(CONFIG_ARM_THUMB)
......
...@@ -24,6 +24,10 @@ ...@@ -24,6 +24,10 @@
#include <linux/time.h> #include <linux/time.h>
#include <linux/kmsg_dump.h> #include <linux/kmsg_dump.h>
#include <linux/mutex.h>
#include <linux/types.h>
#include <linux/spinlock.h>
#include <linux/errno.h>
/* types */ /* types */
enum pstore_type_id { enum pstore_type_id {
...@@ -34,6 +38,8 @@ enum pstore_type_id { ...@@ -34,6 +38,8 @@ enum pstore_type_id {
PSTORE_TYPE_UNKNOWN = 255 PSTORE_TYPE_UNKNOWN = 255
}; };
struct module;
struct pstore_info { struct pstore_info {
struct module *owner; struct module *owner;
char *name; char *name;
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include <linux/init.h> #include <linux/init.h>
struct persistent_ram_buffer; struct persistent_ram_buffer;
struct rs_control;
struct persistent_ram_zone { struct persistent_ram_zone {
phys_addr_t paddr; phys_addr_t paddr;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment