lkml.org 
[lkml]   [2021]   [Mar]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.10 393/663] ARM: 9065/1: OABI compat: fix build when EPOLL is not enabled
    Date
    From: Randy Dunlap <rdunlap@infradead.org>

    [ Upstream commit fd749fe4bcb00ad80d9eece709f804bb4ac6bf1e ]

    When CONFIG_EPOLL is not set/enabled, sys_oabi-compat.c has build
    errors. Fix these by surrounding them with ifdef CONFIG_EPOLL/endif
    and providing stubs for the "EPOLL is not set" case.

    ../arch/arm/kernel/sys_oabi-compat.c: In function 'sys_oabi_epoll_ctl':
    ../arch/arm/kernel/sys_oabi-compat.c:257:6: error: implicit declaration of function 'ep_op_has_event' [-Werror=implicit-function-declaration]
    257 | if (ep_op_has_event(op) &&
    | ^~~~~~~~~~~~~~~
    ../arch/arm/kernel/sys_oabi-compat.c:264:9: error: implicit declaration of function 'do_epoll_ctl'; did you mean 'sys_epoll_ctl'? [-Werror=implicit-function-declaration]
    264 | return do_epoll_ctl(epfd, op, fd, &kernel, false);
    | ^~~~~~~~~~~~

    Fixes: c281634c8652 ("ARM: compat: remove KERNEL_DS usage in sys_oabi_epoll_ctl()")
    Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
    Reported-by: kernel test robot <lkp@intel.com> # from an lkp .config file
    Cc: linux-arm-kernel@lists.infradead.org
    Cc: Nicolas Pitre <nico@fluxnic.net>
    Cc: Alexander Viro <viro@zeniv.linux.org.uk>
    Cc: patches@armlinux.org.uk
    Acked-by: Nicolas Pitre <nico@fluxnic.net>
    Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    arch/arm/kernel/sys_oabi-compat.c | 15 +++++++++++++++
    1 file changed, 15 insertions(+)

    diff --git a/arch/arm/kernel/sys_oabi-compat.c b/arch/arm/kernel/sys_oabi-compat.c
    index 0203e545bbc8d..075a2e0ed2c15 100644
    --- a/arch/arm/kernel/sys_oabi-compat.c
    +++ b/arch/arm/kernel/sys_oabi-compat.c
    @@ -248,6 +248,7 @@ struct oabi_epoll_event {
    __u64 data;
    } __attribute__ ((packed,aligned(4)));

    +#ifdef CONFIG_EPOLL
    asmlinkage long sys_oabi_epoll_ctl(int epfd, int op, int fd,
    struct oabi_epoll_event __user *event)
    {
    @@ -298,6 +299,20 @@ asmlinkage long sys_oabi_epoll_wait(int epfd,
    kfree(kbuf);
    return err ? -EFAULT : ret;
    }
    +#else
    +asmlinkage long sys_oabi_epoll_ctl(int epfd, int op, int fd,
    + struct oabi_epoll_event __user *event)
    +{
    + return -EINVAL;
    +}
    +
    +asmlinkage long sys_oabi_epoll_wait(int epfd,
    + struct oabi_epoll_event __user *events,
    + int maxevents, int timeout)
    +{
    + return -EINVAL;
    +}
    +#endif

    struct oabi_sembuf {
    unsigned short sem_num;
    --
    2.27.0


    \
     
     \ /
      Last update: 2021-03-02 03:05    [W:4.085 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site