lkml.org 
[lkml]   [2018]   [Aug]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Subject[PATCH 06/33] vfs: Introduce logging functions [ver #11]
    From
    Date
    Introduce a set of logging functions through which informational messages,
    warnings and error messages incurred by the mount procedure can be logged
    and, in a future patch, passed to userspace instead by way of the
    filesystem configuration context file descriptor.

    There are four functions:

    (1) infof(const char *fmt, ...);

    Logs an informational message.

    (2) warnf(const char *fmt, ...);

    Logs a warning message.

    (3) errorf(const char *fmt, ...);

    Logs an error message.

    (4) invalf(const char *fmt, ...);

    As errof(), but returns -EINVAL so can be used on a return statement.

    Signed-off-by: David Howells <dhowells@redhat.com>
    ---

    include/linux/fs_context.h | 42 ++++++++++++++++++++++++++++++++++++++++++
    1 file changed, 42 insertions(+)

    diff --git a/include/linux/fs_context.h b/include/linux/fs_context.h
    index 0ff4969f9d5a..a88b54752f86 100644
    --- a/include/linux/fs_context.h
    +++ b/include/linux/fs_context.h
    @@ -98,4 +98,46 @@ struct fs_context_operations {
    int (*get_tree)(struct fs_context *fc);
    };

    +#define logfc(FC, FMT, ...) pr_notice(FMT, ## __VA_ARGS__)
    +
    +/**
    + * infof - Store supplementary informational message
    + * @fc: The context in which to log the informational message
    + * @fmt: The format string
    + *
    + * Store the supplementary informational message for the process if the process
    + * has enabled the facility.
    + */
    +#define infof(fc, fmt, ...) ({ logfc(fc, fmt, ## __VA_ARGS__); })
    +
    +/**
    + * warnf - Store supplementary warning message
    + * @fc: The context in which to log the error message
    + * @fmt: The format string
    + *
    + * Store the supplementary warning message for the process if the process has
    + * enabled the facility.
    + */
    +#define warnf(fc, fmt, ...) ({ logfc(fc, fmt, ## __VA_ARGS__); })
    +
    +/**
    + * errorf - Store supplementary error message
    + * @fc: The context in which to log the error message
    + * @fmt: The format string
    + *
    + * Store the supplementary error message for the process if the process has
    + * enabled the facility.
    + */
    +#define errorf(fc, fmt, ...) ({ logfc(fc, fmt, ## __VA_ARGS__); })
    +
    +/**
    + * invalf - Store supplementary invalid argument error message
    + * @fc: The context in which to log the error message
    + * @fmt: The format string
    + *
    + * Store the supplementary error message for the process if the process has
    + * enabled the facility and return -EINVAL.
    + */
    +#define invalf(fc, fmt, ...) ({ errorf(fc, fmt, ## __VA_ARGS__); -EINVAL; })
    +
    #endif /* _LINUX_FS_CONTEXT_H */
    \
     
     \ /
      Last update: 2018-08-01 17:25    [W:4.240 / U:0.024 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site