| .. | .. |
|---|
| 1 | +/* SPDX-License-Identifier: GPL-2.0-or-later */ |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * include/linux/eventpoll.h ( Efficient event polling implementation ) |
|---|
| 3 | 4 | * Copyright (C) 2001,...,2006 Davide Libenzi |
|---|
| 4 | 5 | * |
|---|
| 5 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 6 | | - * it under the terms of the GNU General Public License as published by |
|---|
| 7 | | - * the Free Software Foundation; either version 2 of the License, or |
|---|
| 8 | | - * (at your option) any later version. |
|---|
| 9 | | - * |
|---|
| 10 | 6 | * Davide Libenzi <davidel@xmailserver.org> |
|---|
| 11 | | - * |
|---|
| 12 | 7 | */ |
|---|
| 13 | 8 | #ifndef _LINUX_EVENTPOLL_H |
|---|
| 14 | 9 | #define _LINUX_EVENTPOLL_H |
|---|
| .. | .. |
|---|
| 23 | 18 | |
|---|
| 24 | 19 | #ifdef CONFIG_EPOLL |
|---|
| 25 | 20 | |
|---|
| 26 | | -#ifdef CONFIG_CHECKPOINT_RESTORE |
|---|
| 21 | +#ifdef CONFIG_KCMP |
|---|
| 27 | 22 | struct file *get_epoll_tfile_raw_ptr(struct file *file, int tfd, unsigned long toff); |
|---|
| 28 | 23 | #endif |
|---|
| 29 | 24 | |
|---|
| .. | .. |
|---|
| 66 | 61 | eventpoll_release_file(file); |
|---|
| 67 | 62 | } |
|---|
| 68 | 63 | |
|---|
| 64 | +int do_epoll_ctl(int epfd, int op, int fd, struct epoll_event *epds, |
|---|
| 65 | + bool nonblock); |
|---|
| 66 | + |
|---|
| 67 | +/* Tells if the epoll_ctl(2) operation needs an event copy from userspace */ |
|---|
| 68 | +static inline int ep_op_has_event(int op) |
|---|
| 69 | +{ |
|---|
| 70 | + return op != EPOLL_CTL_DEL; |
|---|
| 71 | +} |
|---|
| 72 | + |
|---|
| 69 | 73 | #else |
|---|
| 70 | 74 | |
|---|
| 71 | 75 | static inline void eventpoll_init_file(struct file *file) {} |
|---|