.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>
 #define DO_ONCE(func, ...)                                                  \
        ({                                                                   \
                bool ___ret = false;                                         \
-               static bool ___done = false;                                 \
+               static bool __section(".data.once") ___done = false;         \
                static DEFINE_STATIC_KEY_TRUE(___once_key);                  \
                if (static_branch_unlikely(&___once_key)) {                  \
                        unsigned long ___flags;                              \