%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/src/blksnap-6.3.0.73/
Upload File :
Create Path :
Current File : //usr/src/blksnap-6.3.0.73/log.h

/* SPDX-License-Identifier: GPL-2.0 */
#ifndef __BLK_SNAP_LOG_H
#define __BLK_SNAP_LOG_H

#ifdef BLK_SNAP_FILELOG

void log_init(void);
void log_done(void);
int log_restart(int level, char *filepath, int tz_minuteswest);
void log_printk(const int level, const char *fmt, ...);


#undef pr_emerg
#define pr_emerg(fmt, ...) \
({ \
	log_printk(LOGLEVEL_EMERG, fmt, ##__VA_ARGS__); \
	printk(KERN_EMERG pr_fmt(fmt), ##__VA_ARGS__) \
})

#undef pr_alert
#define pr_alert(fmt, ...) \
({ \
	log_printk(LOGLEVEL_ALERT, fmt, ##__VA_ARGS__); \
	printk(KERN_ALERT pr_fmt(fmt), ##__VA_ARGS__) \
})

#undef pr_crit
#define pr_crit(fmt, ...) \
({ \
	log_printk(LOGLEVEL_CRIT, fmt, ##__VA_ARGS__); \
	printk(KERN_CRIT pr_fmt(fmt), ##__VA_ARGS__); \
})

#undef pr_err
#define pr_err(fmt, ...) \
({ \
	log_printk(LOGLEVEL_ERR, fmt, ##__VA_ARGS__); \
	printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__); \
})

#undef pr_warn
#define pr_warn(fmt, ...) \
({ \
	log_printk(LOGLEVEL_WARNING, fmt, ##__VA_ARGS__); \
	printk(KERN_WARNING pr_fmt(fmt), ##__VA_ARGS__); \
})

#undef pr_notice
#define pr_notice(fmt, ...) \
({ \
	log_printk(LOGLEVEL_NOTICE, fmt, ##__VA_ARGS__); \
	printk(KERN_NOTICE pr_fmt(fmt), ##__VA_ARGS__) \
})
#undef pr_info
#define pr_info(fmt, ...) \
({ \
	log_printk(LOGLEVEL_INFO, fmt, ##__VA_ARGS__); \
	printk(KERN_INFO pr_fmt(fmt), ##__VA_ARGS__); \
})

#undef pr_debug
#if defined(BLK_SNAP_DEBUGLOG) || defined(DEBUG)
#define pr_debug(fmt, ...) \
({ \
	log_printk(LOGLEVEL_DEBUG, fmt, ##__VA_ARGS__); \
	printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__); \
})
#else
#define pr_debug(fmt, ...) \
({ \
	log_printk(LOGLEVEL_DEBUG, fmt, ##__VA_ARGS__); \
	no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__); \
})
#endif

#elif defined(BLK_SNAP_DEBUGLOG)

#undef pr_debug
#if defined(BLK_SNAP_DEBUGLOG) || defined(DEBUG)
#define pr_debug(fmt, ...) \
	printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
#else
#define pr_debug(fmt, ...) \
	no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
#endif

#endif

#define LIMIT_BEGIN(_N) 							\
{										\
	static volatile int _limit = _N;					\
	if (_limit > 0) {							\
		_limit --;

#define LIMIT_STOP() 								\
	} else if (_limit == 0) {						\
		_limit --;

#define LIMIT_END()								\
	}									\
}

#endif /* __BLK_SNAP_LOG_H */

Zerion Mini Shell 1.0