lkml.org 
[lkml]   [2022]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    Subject[PATCH v5 15/22] treewide: Drop __cficanonical
    From
    CONFIG_CFI_CLANG doesn't use a jump table anymore and therefore,
    won't change function references to point elsewhere. Remove the
    __cficanonical attribute and all uses of it.

    Note that the Clang definition of the attribute was removed earlier,
    just clean up the no-op definition and users.

    Signed-off-by: Sami Tolvanen <samitolvanen@google.com>
    Reviewed-by: Kees Cook <keescook@chromium.org>
    Tested-by: Kees Cook <keescook@chromium.org>
    Tested-by: Nathan Chancellor <nathan@kernel.org>
    ---
    include/linux/compiler_types.h | 4 ----
    include/linux/init.h | 4 ++--
    include/linux/pci.h | 4 ++--
    3 files changed, 4 insertions(+), 8 deletions(-)

    diff --git a/include/linux/compiler_types.h b/include/linux/compiler_types.h
    index 4f2a819fd60a..6f2ec0976e2d 100644
    --- a/include/linux/compiler_types.h
    +++ b/include/linux/compiler_types.h
    @@ -265,10 +265,6 @@ struct ftrace_likely_data {
    # define __nocfi
    #endif

    -#ifndef __cficanonical
    -# define __cficanonical
    -#endif
    -
    /*
    * Any place that could be marked with the "alloc_size" attribute is also
    * a place to be marked with the "malloc" attribute. Do this as part of the
    diff --git a/include/linux/init.h b/include/linux/init.h
    index 88f2964097f5..a0a90cd73ebe 100644
    --- a/include/linux/init.h
    +++ b/include/linux/init.h
    @@ -220,8 +220,8 @@ extern bool initcall_debug;
    __initcall_name(initstub, __iid, id)

    #define __define_initcall_stub(__stub, fn) \
    - int __init __cficanonical __stub(void); \
    - int __init __cficanonical __stub(void) \
    + int __init __stub(void); \
    + int __init __stub(void) \
    { \
    return fn(); \
    } \
    diff --git a/include/linux/pci.h b/include/linux/pci.h
    index 060af91bafcd..5da0846aa3c1 100644
    --- a/include/linux/pci.h
    +++ b/include/linux/pci.h
    @@ -2019,8 +2019,8 @@ enum pci_fixup_pass {
    #ifdef CONFIG_LTO_CLANG
    #define __DECLARE_PCI_FIXUP_SECTION(sec, name, vendor, device, class, \
    class_shift, hook, stub) \
    - void __cficanonical stub(struct pci_dev *dev); \
    - void __cficanonical stub(struct pci_dev *dev) \
    + void stub(struct pci_dev *dev); \
    + void stub(struct pci_dev *dev) \
    { \
    hook(dev); \
    } \
    --
    2.37.2.789.g6183377224-goog
    \
     
     \ /
      Last update: 2022-09-08 23:58    [W:7.116 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site