diff options
Diffstat (limited to 'fs/pstore/platform.c')
-rw-r--r-- | fs/pstore/platform.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c index 49ff1de2178a..c5300ec31696 100644 --- a/fs/pstore/platform.c +++ b/fs/pstore/platform.c | |||
@@ -37,6 +37,8 @@ | |||
37 | static DEFINE_SPINLOCK(pstore_lock); | 37 | static DEFINE_SPINLOCK(pstore_lock); |
38 | static struct pstore_info *psinfo; | 38 | static struct pstore_info *psinfo; |
39 | 39 | ||
40 | static char *backend; | ||
41 | |||
40 | /* How much of the console log to snapshot */ | 42 | /* How much of the console log to snapshot */ |
41 | static unsigned long kmsg_bytes = 10240; | 43 | static unsigned long kmsg_bytes = 10240; |
42 | 44 | ||
@@ -131,6 +133,12 @@ int pstore_register(struct pstore_info *psi) | |||
131 | spin_unlock(&pstore_lock); | 133 | spin_unlock(&pstore_lock); |
132 | return -EBUSY; | 134 | return -EBUSY; |
133 | } | 135 | } |
136 | |||
137 | if (backend && strcmp(backend, psi->name)) { | ||
138 | spin_unlock(&pstore_lock); | ||
139 | return -EINVAL; | ||
140 | } | ||
141 | |||
134 | psinfo = psi; | 142 | psinfo = psi; |
135 | spin_unlock(&pstore_lock); | 143 | spin_unlock(&pstore_lock); |
136 | 144 | ||
@@ -208,3 +216,6 @@ int pstore_write(enum pstore_type_id type, char *buf, size_t size) | |||
208 | return 0; | 216 | return 0; |
209 | } | 217 | } |
210 | EXPORT_SYMBOL_GPL(pstore_write); | 218 | EXPORT_SYMBOL_GPL(pstore_write); |
219 | |||
220 | module_param(backend, charp, 0444); | ||
221 | MODULE_PARM_DESC(backend, "Pstore backend to use"); | ||