[FIX] correct handling of do_munmap()
[kernel/swap-modules.git] / driver / swap_ioctl.h
1 /*
2  *  SWAP driver
3  *  modules/driver/swap_ioctl.h
4  *
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  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18  *
19  * Copyright (C) Samsung Electronics, 2013
20  *
21  * 2013  Alexander Aksenov <a.aksenov@samsung.com>: SWAP device driver implement
22  *
23  */
24
25 #ifndef __SWAP_IOCTL_H__
26 #define __SWAP_IOCTL_H__
27
28 #include <linux/ioctl.h>
29
30 #define SWAP_DRIVER_IOC_MAGIC 0xAF
31
32 struct buffer_initialize {
33         size_t size;
34         unsigned int count;
35 };
36
37 /* SWAP Device ioctl commands */
38
39 #define SWAP_DRIVER_BUFFER_INITIALIZE           _IOW(SWAP_DRIVER_IOC_MAGIC, 1, \
40                                                      struct buffer_initialize *)
41 #define SWAP_DRIVER_BUFFER_UNINITIALIZE         _IO(SWAP_DRIVER_IOC_MAGIC, 2)
42 #define SWAP_DRIVER_NEXT_BUFFER_TO_READ         _IO(SWAP_DRIVER_IOC_MAGIC, 3)
43 #define SWAP_DRIVER_FLUSH_BUFFER                _IO(SWAP_DRIVER_IOC_MAGIC, 4)
44 #define SWAP_DRIVER_MSG                         _IOW(SWAP_DRIVER_IOC_MAGIC, 5, \
45                                                      void *)
46 #define SWAP_DRIVER_WAKE_UP                     _IO(SWAP_DRIVER_IOC_MAGIC, 6)
47
48 #endif /* __SWAP_IOCTL_H__ */