|
@@ -549,46 +549,29 @@ void *dm_vcalloc(unsigned long nmemb, unsigned long elem_size);
|
|
|
*---------------------------------------------------------------*/
|
|
|
#define DM_NAME "device-mapper"
|
|
|
|
|
|
-#ifdef CONFIG_PRINTK
|
|
|
-extern struct ratelimit_state dm_ratelimit_state;
|
|
|
-
|
|
|
-#define dm_ratelimit() __ratelimit(&dm_ratelimit_state)
|
|
|
-#else
|
|
|
-#define dm_ratelimit() 0
|
|
|
-#endif
|
|
|
+#define DM_RATELIMIT(pr_func, fmt, ...) \
|
|
|
+do { \
|
|
|
+ static DEFINE_RATELIMIT_STATE(rs, DEFAULT_RATELIMIT_INTERVAL, \
|
|
|
+ DEFAULT_RATELIMIT_BURST); \
|
|
|
+ \
|
|
|
+ if (__ratelimit(&rs)) \
|
|
|
+ pr_func(DM_FMT(fmt), ##__VA_ARGS__); \
|
|
|
+} while (0)
|
|
|
|
|
|
#define DM_FMT(fmt) DM_NAME ": " DM_MSG_PREFIX ": " fmt "\n"
|
|
|
|
|
|
#define DMCRIT(fmt, ...) pr_crit(DM_FMT(fmt), ##__VA_ARGS__)
|
|
|
|
|
|
#define DMERR(fmt, ...) pr_err(DM_FMT(fmt), ##__VA_ARGS__)
|
|
|
-#define DMERR_LIMIT(fmt, ...) \
|
|
|
-do { \
|
|
|
- if (dm_ratelimit()) \
|
|
|
- DMERR(fmt, ##__VA_ARGS__); \
|
|
|
-} while (0)
|
|
|
-
|
|
|
+#define DMERR_LIMIT(fmt, ...) DM_RATELIMIT(pr_err, fmt, ##__VA_ARGS__)
|
|
|
#define DMWARN(fmt, ...) pr_warn(DM_FMT(fmt), ##__VA_ARGS__)
|
|
|
-#define DMWARN_LIMIT(fmt, ...) \
|
|
|
-do { \
|
|
|
- if (dm_ratelimit()) \
|
|
|
- DMWARN(fmt, ##__VA_ARGS__); \
|
|
|
-} while (0)
|
|
|
-
|
|
|
+#define DMWARN_LIMIT(fmt, ...) DM_RATELIMIT(pr_warn, fmt, ##__VA_ARGS__)
|
|
|
#define DMINFO(fmt, ...) pr_info(DM_FMT(fmt), ##__VA_ARGS__)
|
|
|
-#define DMINFO_LIMIT(fmt, ...) \
|
|
|
-do { \
|
|
|
- if (dm_ratelimit()) \
|
|
|
- DMINFO(fmt, ##__VA_ARGS__); \
|
|
|
-} while (0)
|
|
|
+#define DMINFO_LIMIT(fmt, ...) DM_RATELIMIT(pr_info, fmt, ##__VA_ARGS__)
|
|
|
|
|
|
#ifdef CONFIG_DM_DEBUG
|
|
|
#define DMDEBUG(fmt, ...) printk(KERN_DEBUG DM_FMT(fmt), ##__VA_ARGS__)
|
|
|
-#define DMDEBUG_LIMIT(fmt, ...) \
|
|
|
-do { \
|
|
|
- if (dm_ratelimit()) \
|
|
|
- DMDEBUG(fmt, ##__VA_ARGS__); \
|
|
|
-} while (0)
|
|
|
+#define DMDEBUG_LIMIT(fmt, ...) DM_RATELIMIT(pr_debug, fmt, ##__VA_ARGS__)
|
|
|
#else
|
|
|
#define DMDEBUG(fmt, ...) no_printk(fmt, ##__VA_ARGS__)
|
|
|
#define DMDEBUG_LIMIT(fmt, ...) no_printk(fmt, ##__VA_ARGS__)
|