• Tanner Love's avatar
    once: implement DO_ONCE_LITE for non-fast-path "do once" functionality · a358f406
    Tanner Love authored
    Certain uses of "do once" functionality reside outside of fast path,
    and so do not require jump label patching via static keys, making
    existing DO_ONCE undesirable in such cases.
    
    Replace uses of __section(".data.once") with DO_ONCE_LITE(_IF)?
    
    This patch changes the return values of xfs_printk_once, printk_once,
    and printk_deferred_once. Before, they returned whether the print was
    performed, but now, they always return true. This is okay because the
    return values of the following macros are entirely ignored throughout
    the kernel:
    - xfs_printk_once
    - xfs_warn_once
    - xfs_notice_once
    - xfs_info_once
    - printk_once
    - pr_emerg_once
    - pr_alert_once
    - pr_crit_once
    - pr_err_once
    - pr_warn_once
    - pr_notice_once
    - pr_info_once
    - pr_devel_once
    - pr_debug_once
    - printk_deferred_once
    - orc_warn
    
    Changes
    v3:
      - Expand commit message to explain why changing return values of
        xfs_printk_once, printk_once, printk_deferred_once is benign
    v2:
      - Fix i386 build warnings
    Signed-off-by: default avatarTanner Love <tannerlove@google.com>
    Acked-by: default avatarEric Dumazet <edumazet@google.com>
    Acked-by: default avatarMahesh Bandewar <maheshb@google.com>
    Acked-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    a358f406
bug.h 6.75 KB