mirror of
https://github.com/kdave/btrfs-progs
synced 2025-02-02 02:41:36 +00:00
btrfs-progs: move message helpers out of utils
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
a09f0e96e7
commit
bb104f5bce
131
messages.h
Normal file
131
messages.h
Normal file
@ -0,0 +1,131 @@
|
||||
/*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public
|
||||
* License v2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public
|
||||
* License along with this program; if not, write to the
|
||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
* Boston, MA 021110-1307, USA.
|
||||
*/
|
||||
|
||||
#ifndef __BTRFS_MESSAGES_H__
|
||||
#define __BTRFS_MESSAGES_H__
|
||||
|
||||
#if DEBUG_VERBOSE_ERROR
|
||||
#define PRINT_VERBOSE_ERROR fprintf(stderr, "%s:%d:", __FILE__, __LINE__)
|
||||
#else
|
||||
#define PRINT_VERBOSE_ERROR
|
||||
#endif
|
||||
|
||||
#if DEBUG_TRACE_ON_ERROR
|
||||
#define PRINT_TRACE_ON_ERROR print_trace()
|
||||
#else
|
||||
#define PRINT_TRACE_ON_ERROR
|
||||
#endif
|
||||
|
||||
#if DEBUG_ABORT_ON_ERROR
|
||||
#define DO_ABORT_ON_ERROR abort()
|
||||
#else
|
||||
#define DO_ABORT_ON_ERROR
|
||||
#endif
|
||||
|
||||
#define error(fmt, ...) \
|
||||
do { \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__error((fmt), ##__VA_ARGS__); \
|
||||
DO_ABORT_ON_ERROR; \
|
||||
} while (0)
|
||||
|
||||
#define error_on(cond, fmt, ...) \
|
||||
do { \
|
||||
if ((cond)) \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
if ((cond)) \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__error_on((cond), (fmt), ##__VA_ARGS__); \
|
||||
if ((cond)) \
|
||||
DO_ABORT_ON_ERROR; \
|
||||
} while (0)
|
||||
|
||||
#define warning(fmt, ...) \
|
||||
do { \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__warning((fmt), ##__VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
#define warning_on(cond, fmt, ...) \
|
||||
do { \
|
||||
if ((cond)) \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
if ((cond)) \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__warning_on((cond), (fmt), ##__VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
__attribute__ ((format (printf, 1, 2)))
|
||||
static inline void __warning(const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
fputs("WARNING: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
}
|
||||
|
||||
__attribute__ ((format (printf, 1, 2)))
|
||||
static inline void __error(const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
fputs("ERROR: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
}
|
||||
|
||||
__attribute__ ((format (printf, 2, 3)))
|
||||
static inline int __warning_on(int condition, const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
if (!condition)
|
||||
return 0;
|
||||
|
||||
fputs("WARNING: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
__attribute__ ((format (printf, 2, 3)))
|
||||
static inline int __error_on(int condition, const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
if (!condition)
|
||||
return 0;
|
||||
|
||||
fputs("ERROR: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
#endif
|
112
utils.h
112
utils.h
@ -27,6 +27,7 @@
|
||||
#include "internal.h"
|
||||
#include "btrfs-list.h"
|
||||
#include "sizes.h"
|
||||
#include "messages.h"
|
||||
|
||||
#define BTRFS_SCAN_MOUNTED (1ULL << 0)
|
||||
#define BTRFS_SCAN_LBLKID (1ULL << 1)
|
||||
@ -146,59 +147,6 @@ int btrfs_tree_search2_ioctl_supported(int fd);
|
||||
unsigned int get_unit_mode_from_arg(int *argc, char *argv[], int df_mode);
|
||||
int string_is_numerical(const char *str);
|
||||
|
||||
#if DEBUG_VERBOSE_ERROR
|
||||
#define PRINT_VERBOSE_ERROR fprintf(stderr, "%s:%d:", __FILE__, __LINE__)
|
||||
#else
|
||||
#define PRINT_VERBOSE_ERROR
|
||||
#endif
|
||||
|
||||
#if DEBUG_TRACE_ON_ERROR
|
||||
#define PRINT_TRACE_ON_ERROR print_trace()
|
||||
#else
|
||||
#define PRINT_TRACE_ON_ERROR
|
||||
#endif
|
||||
|
||||
#if DEBUG_ABORT_ON_ERROR
|
||||
#define DO_ABORT_ON_ERROR abort()
|
||||
#else
|
||||
#define DO_ABORT_ON_ERROR
|
||||
#endif
|
||||
|
||||
#define error(fmt, ...) \
|
||||
do { \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__error((fmt), ##__VA_ARGS__); \
|
||||
DO_ABORT_ON_ERROR; \
|
||||
} while (0)
|
||||
|
||||
#define error_on(cond, fmt, ...) \
|
||||
do { \
|
||||
if ((cond)) \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
if ((cond)) \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__error_on((cond), (fmt), ##__VA_ARGS__); \
|
||||
if ((cond)) \
|
||||
DO_ABORT_ON_ERROR; \
|
||||
} while (0)
|
||||
|
||||
#define warning(fmt, ...) \
|
||||
do { \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__warning((fmt), ##__VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
#define warning_on(cond, fmt, ...) \
|
||||
do { \
|
||||
if ((cond)) \
|
||||
PRINT_TRACE_ON_ERROR; \
|
||||
if ((cond)) \
|
||||
PRINT_VERBOSE_ERROR; \
|
||||
__warning_on((cond), (fmt), ##__VA_ARGS__); \
|
||||
} while (0)
|
||||
|
||||
/*
|
||||
* Global program state, configurable by command line and available to
|
||||
* functions without extra context passing.
|
||||
@ -209,64 +157,6 @@ extern struct btrfs_config bconf;
|
||||
|
||||
void btrfs_config_init(void);
|
||||
|
||||
__attribute__ ((format (printf, 1, 2)))
|
||||
static inline void __warning(const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
fputs("WARNING: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
}
|
||||
|
||||
__attribute__ ((format (printf, 1, 2)))
|
||||
static inline void __error(const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
fputs("ERROR: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
}
|
||||
|
||||
__attribute__ ((format (printf, 2, 3)))
|
||||
static inline int __warning_on(int condition, const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
if (!condition)
|
||||
return 0;
|
||||
|
||||
fputs("WARNING: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
__attribute__ ((format (printf, 2, 3)))
|
||||
static inline int __error_on(int condition, const char *fmt, ...)
|
||||
{
|
||||
va_list args;
|
||||
|
||||
if (!condition)
|
||||
return 0;
|
||||
|
||||
fputs("ERROR: ", stderr);
|
||||
va_start(args, fmt);
|
||||
vfprintf(stderr, fmt, args);
|
||||
va_end(args);
|
||||
fputc('\n', stderr);
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* Pseudo random number generator wrappers */
|
||||
int rand_int(void);
|
||||
u8 rand_u8(void);
|
||||
|
Loading…
Reference in New Issue
Block a user