once: use __section(".data.once")
.data.once contains nicely packed bool variables. It is used already by DO_ONCE_LITE(). Using it also in DO_ONCE() removes holes in .data section. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
62803fec52
commit
c2c60ea37e
@ -38,7 +38,7 @@ void __do_once_done(bool *done, struct static_key_true *once_key,
|
|||||||
#define DO_ONCE(func, ...) \
|
#define DO_ONCE(func, ...) \
|
||||||
({ \
|
({ \
|
||||||
bool ___ret = false; \
|
bool ___ret = false; \
|
||||||
static bool ___done = false; \
|
static bool __section(".data.once") ___done = false; \
|
||||||
static DEFINE_STATIC_KEY_TRUE(___once_key); \
|
static DEFINE_STATIC_KEY_TRUE(___once_key); \
|
||||||
if (static_branch_unlikely(&___once_key)) { \
|
if (static_branch_unlikely(&___once_key)) { \
|
||||||
unsigned long ___flags; \
|
unsigned long ___flags; \
|
||||||
|
Loading…
Reference in New Issue
Block a user