diff options
author | Marcin Niesluchowski <m.niesluchow@samsung.com> | 2015-07-20 14:52:06 +0200 |
---|---|---|
committer | Seung-Woo Kim <sw0312.kim@samsung.com> | 2016-12-14 13:49:13 +0900 |
commit | 62bbd37627b8fa194ae668b352d40c090d9cc6e0 (patch) | |
tree | e8103004a09347ce9d2c3fa5da1cda219dac0992 /include | |
parent | 8c83cc6f929d470636e6756d5447337e2f67e741 (diff) |
kmsg: add additional buffers support to memory class
Memory class does not support additional kmsg buffers.
Add additional kmsg buffers support to:
* devnode() callback of "mem" class
* file operations of major "mem" character device
Change-Id: I15b6c79435b4dc18422a9bd6836bd9c7a87ad60a
Signed-off-by: Marcin Niesluchowski <m.niesluchow@samsung.com>
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/printk.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/include/linux/printk.h b/include/linux/printk.h index 58b1fec40d37..4147304f394b 100644 --- a/include/linux/printk.h +++ b/include/linux/printk.h @@ -417,8 +417,40 @@ do { \ no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) #endif +struct file; +struct inode; + +#ifdef CONFIG_PRINTK + +extern struct class *mem_class; + +#define KMSG_MINOR 11 + extern const struct file_operations kmsg_fops; +extern struct device *init_kmsg(int minor, umode_t mode); +extern int kmsg_memory_open(struct inode *inode, struct file *filp); +extern int kmsg_mode(int minor, umode_t *mode); + +#else + +static inline struct device *init_kmsg(int minor, umode_t mode) +{ + return NULL; +} + +static inline int kmsg_memory_open(struct inode *inode, struct file *filp) +{ + return -ENXIO; +} + +static inline int kmsg_mode(int minor, umode_t *mode) +{ + return -ENXIO; +} + +#endif + enum { DUMP_PREFIX_NONE, DUMP_PREFIX_ADDRESS, |