1*6f52b16cSGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 23f4994cfSMichael Ellerman #ifndef _UAPI_LINUX_KCMP_H 33f4994cfSMichael Ellerman #define _UAPI_LINUX_KCMP_H 43f4994cfSMichael Ellerman 50791e364SCyrill Gorcunov #include <linux/types.h> 60791e364SCyrill Gorcunov 73f4994cfSMichael Ellerman /* Comparison type */ 83f4994cfSMichael Ellerman enum kcmp_type { 93f4994cfSMichael Ellerman KCMP_FILE, 103f4994cfSMichael Ellerman KCMP_VM, 113f4994cfSMichael Ellerman KCMP_FILES, 123f4994cfSMichael Ellerman KCMP_FS, 133f4994cfSMichael Ellerman KCMP_SIGHAND, 143f4994cfSMichael Ellerman KCMP_IO, 153f4994cfSMichael Ellerman KCMP_SYSVSEM, 160791e364SCyrill Gorcunov KCMP_EPOLL_TFD, 173f4994cfSMichael Ellerman 183f4994cfSMichael Ellerman KCMP_TYPES, 193f4994cfSMichael Ellerman }; 203f4994cfSMichael Ellerman 210791e364SCyrill Gorcunov /* Slot for KCMP_EPOLL_TFD */ 220791e364SCyrill Gorcunov struct kcmp_epoll_slot { 230791e364SCyrill Gorcunov __u32 efd; /* epoll file descriptor */ 240791e364SCyrill Gorcunov __u32 tfd; /* target file number */ 250791e364SCyrill Gorcunov __u32 toff; /* target offset within same numbered sequence */ 260791e364SCyrill Gorcunov }; 270791e364SCyrill Gorcunov 283f4994cfSMichael Ellerman #endif /* _UAPI_LINUX_KCMP_H */ 29