linux/include/linux/io_uring.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2#ifndef _LINUX_IO_URING_H
   3#define _LINUX_IO_URING_H
   4
   5#include <linux/sched.h>
   6#include <linux/xarray.h>
   7
   8#if defined(CONFIG_IO_URING)
   9struct sock *io_uring_get_socket(struct file *file);
  10void __io_uring_cancel(struct files_struct *files);
  11void __io_uring_free(struct task_struct *tsk);
  12
  13static inline void io_uring_files_cancel(struct files_struct *files)
  14{
  15        if (current->io_uring)
  16                __io_uring_cancel(files);
  17}
  18static inline void io_uring_task_cancel(void)
  19{
  20        return io_uring_files_cancel(NULL);
  21}
  22static inline void io_uring_free(struct task_struct *tsk)
  23{
  24        if (tsk->io_uring)
  25                __io_uring_free(tsk);
  26}
  27#else
  28static inline struct sock *io_uring_get_socket(struct file *file)
  29{
  30        return NULL;
  31}
  32static inline void io_uring_task_cancel(void)
  33{
  34}
  35static inline void io_uring_files_cancel(struct files_struct *files)
  36{
  37}
  38static inline void io_uring_free(struct task_struct *tsk)
  39{
  40}
  41#endif
  42
  43#endif
  44