Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[linux-2.6-microblaze.git] / include / linux / aio.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __LINUX__AIO_H
3 #define __LINUX__AIO_H
4
5 #include <linux/aio_abi.h>
6
7 struct kioctx;
8 struct kiocb;
9 struct mm_struct;
10
11 #define KIOCB_KEY               0
12
13 typedef int (kiocb_cancel_fn)(struct kiocb *);
14
15 /* prototypes */
16 #ifdef CONFIG_AIO
17 extern void exit_aio(struct mm_struct *mm);
18 void kiocb_set_cancel_fn(struct kiocb *req, kiocb_cancel_fn *cancel);
19 #else
20 static inline void exit_aio(struct mm_struct *mm) { }
21 static inline void kiocb_set_cancel_fn(struct kiocb *req,
22                                        kiocb_cancel_fn *cancel) { }
23 #endif /* CONFIG_AIO */
24
25 /* for sysctl: */
26 extern unsigned long aio_nr;
27 extern unsigned long aio_max_nr;
28
29 #endif /* __LINUX__AIO_H */