diff options
author | stefanf <stefanf@FreeBSD.org> | 2005-04-17 15:08:34 +0000 |
---|---|---|
committer | stefanf <stefanf@FreeBSD.org> | 2005-04-17 15:08:34 +0000 |
commit | 04b7f3b4a806515dd37427d68f33ee7fd081ad15 (patch) | |
tree | bca186769991c538bc1ba66c3d63c370d6397dea | |
parent | 04a684b00867c82cd1b39dd8ee860493675f6cb0 (diff) | |
download | FreeBSD-src-04b7f3b4a806515dd37427d68f33ee7fd081ad15.zip FreeBSD-src-04b7f3b4a806515dd37427d68f33ee7fd081ad15.tar.gz |
Use __CONCAT() in the TUNABLE_ macros, this way we don't have to use 3
macros per type.
-rw-r--r-- | sys/sys/kernel.h | 66 |
1 files changed, 25 insertions, 41 deletions
diff --git a/sys/sys/kernel.h b/sys/sys/kernel.h index 026ebc7..e132c4b 100644 --- a/sys/sys/kernel.h +++ b/sys/sys/kernel.h @@ -277,17 +277,13 @@ struct tunable_int { int *var; }; #define TUNABLE_INT(path, var) \ - _TUNABLE_INT((path), (var), __LINE__) -#define _TUNABLE_INT(path, var, line) \ - __TUNABLE_INT((path), (var), line) - -#define __TUNABLE_INT(path, var, line) \ - static struct tunable_int __tunable_int_ ## line = { \ - path, \ - var, \ + static struct tunable_int __CONCAT(__tunable_int_, __LINE__) = { \ + (path), \ + (var), \ }; \ - SYSINIT(__Tunable_init_ ## line, SI_SUB_TUNABLES, SI_ORDER_MIDDLE, \ - tunable_int_init, &__tunable_int_ ## line) + SYSINIT(__CONCAT(__Tunable_init_, __LINE__), \ + SI_SUB_TUNABLES, SI_ORDER_MIDDLE, tunable_int_init, \ + &__CONCAT(__tunable_int_, __LINE__)) #define TUNABLE_INT_FETCH(path, var) getenv_int((path), (var)) @@ -300,17 +296,13 @@ struct tunable_long { long *var; }; #define TUNABLE_LONG(path, var) \ - _TUNABLE_LONG((path), (var), __LINE__) -#define _TUNABLE_LONG(path, var, line) \ - __TUNABLE_LONG((path), (var), line) - -#define __TUNABLE_LONG(path, var, line) \ - static struct tunable_long __tunable_long_ ## line = { \ - path, \ - var, \ + static struct tunable_long __CONCAT(__tunable_long_, __LINE__) = { \ + (path), \ + (var), \ }; \ - SYSINIT(__Tunable_init_ ## line, SI_SUB_TUNABLES, SI_ORDER_MIDDLE, \ - tunable_long_init, &__tunable_long_ ## line) + SYSINIT(__CONCAT(__Tunable_init_, __LINE__), \ + SI_SUB_TUNABLES, SI_ORDER_MIDDLE, tunable_long_init,\ + &__CONCAT(__tunable_long_, __LINE__)) #define TUNABLE_LONG_FETCH(path, var) getenv_long((path), (var)) @@ -323,17 +315,13 @@ struct tunable_ulong { unsigned long *var; }; #define TUNABLE_ULONG(path, var) \ - _TUNABLE_ULONG((path), (var), __LINE__) -#define _TUNABLE_ULONG(path, var, line) \ - __TUNABLE_ULONG((path), (var), line) - -#define __TUNABLE_ULONG(path, var, line) \ - static struct tunable_ulong __tunable_ulong_ ## line = {\ - path, \ - var, \ + static struct tunable_ulong __CONCAT(__tunable_ulong_, __LINE__) = { \ + (path), \ + (var), \ }; \ - SYSINIT(__Tunable_init_ ## line, SI_SUB_TUNABLES, SI_ORDER_MIDDLE, \ - tunable_ulong_init, &__tunable_ulong_ ## line) + SYSINIT(__CONCAT(__Tunable_init_, __LINE__), \ + SI_SUB_TUNABLES, SI_ORDER_MIDDLE, tunable_ulong_init, \ + &__CONCAT(__tunable_ulong_, __LINE__)) #define TUNABLE_ULONG_FETCH(path, var) getenv_ulong((path), (var)) @@ -344,18 +332,14 @@ struct tunable_str { int size; }; #define TUNABLE_STR(path, var, size) \ - _TUNABLE_STR((path), (var), (size), __LINE__) -#define _TUNABLE_STR(path, var, size, line) \ - __TUNABLE_STR((path), (var), (size), line) - -#define __TUNABLE_STR(path, var, size, line) \ - static struct tunable_str __tunable_str_ ## line = { \ - path, \ - var, \ - size, \ + static struct tunable_str __CONCAT(__tunable_str_, __LINE__) = { \ + (path), \ + (var), \ + (size), \ }; \ - SYSINIT(__Tunable_init_ ## line, SI_SUB_TUNABLES, SI_ORDER_MIDDLE, \ - tunable_str_init, &__tunable_str_ ## line) + SYSINIT(__CONCAT(__Tunable_init_, __LINE__), \ + SI_SUB_TUNABLES, SI_ORDER_MIDDLE, tunable_str_init, \ + &__CONCAT(__tunable_str_, __LINE__)) #define TUNABLE_STR_FETCH(path, var, size) \ getenv_string((path), (var), (size)) |