]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
log: add some more log and return helpers
authorChristian Brauner <christian.brauner@ubuntu.com>
Thu, 25 Feb 2021 22:29:37 +0000 (23:29 +0100)
committerChristian Brauner <christian.brauner@ubuntu.com>
Thu, 25 Feb 2021 22:37:14 +0000 (23:37 +0100)
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
src/lxc/log.h

index 2c536aa98ce46a1261a2467b2cca8dc342888e36..fdf35bd7eac78b58b3f5253de1a900945ca20c33 100644 (file)
@@ -508,13 +508,6 @@ __lxc_unused static inline void LXC_##LEVEL(struct lxc_log_locinfo* locinfo,       \
                __internal_ret__;                             \
        })
 
-#define sysdebug(__ret__, format, ...)                        \
-       ({                                                    \
-               typeof(__ret__) __internal_ret__ = (__ret__); \
-               SYSDEBUG(format, ##__VA_ARGS__);              \
-               __internal_ret__;                             \
-       })
-
 #define systrace(__ret__, format, ...)                        \
        ({                                                    \
                typeof(__ret__) __internal_ret__ = (__ret__); \
@@ -545,6 +538,34 @@ __lxc_unused static inline void LXC_##LEVEL(struct lxc_log_locinfo* locinfo,       \
                __internal_ret__;                             \
        })
 
+#define syserror(format, ...)                    \
+       ({                                       \
+               SYSERROR(format, ##__VA_ARGS__); \
+               (-errno);                        \
+       })
+
+#define syserror_set(__ret__, format, ...)                    \
+       ({                                                    \
+               typeof(__ret__) __internal_ret__ = (__ret__); \
+               errno = labs(__ret__);                        \
+               SYSERROR(format, ##__VA_ARGS__);              \
+               __internal_ret__;                             \
+       })
+
+#define sysdebug(format, ...)                    \
+       ({                                       \
+               SYSDEBUG(format, ##__VA_ARGS__); \
+               (-errno);                        \
+       })
+
+#define sysdebug_set(__ret__, format, ...)                    \
+       ({                                                    \
+               typeof(__ret__) __internal_ret__ = (__ret__); \
+               errno = labs(__ret__);                        \
+               SYSDEBUG(format, ##__VA_ARGS__);              \
+               __internal_ret__;                             \
+       })
+
 #define log_error(__ret__, format, ...)                       \
        ({                                                    \
                typeof(__ret__) __internal_ret__ = (__ret__); \