Merge tag 'parisc-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6
[pandora-kernel.git] / fs / xfs / xfs_ioctl.h
1 /*
2  * Copyright (c) 2008 Silicon Graphics, Inc.
3  * All Rights Reserved.
4  *
5  * This program is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU General Public License as
7  * published by the Free Software Foundation.
8  *
9  * This program is distributed in the hope that it would be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License
15  * along with this program; if not, write the Free Software Foundation,
16  * Inc.,  51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
17  */
18 #ifndef __XFS_IOCTL_H__
19 #define __XFS_IOCTL_H__
20
21 extern int
22 xfs_ioc_space(
23         struct xfs_inode        *ip,
24         struct inode            *inode,
25         struct file             *filp,
26         int                     ioflags,
27         unsigned int            cmd,
28         xfs_flock64_t           *bf);
29
30 extern int
31 xfs_find_handle(
32         unsigned int            cmd,
33         xfs_fsop_handlereq_t    *hreq);
34
35 extern int
36 xfs_open_by_handle(
37         struct file             *parfilp,
38         xfs_fsop_handlereq_t    *hreq);
39
40 extern int
41 xfs_readlink_by_handle(
42         struct file             *parfilp,
43         xfs_fsop_handlereq_t    *hreq);
44
45 extern int
46 xfs_attrmulti_attr_get(
47         struct inode            *inode,
48         unsigned char           *name,
49         unsigned char           __user *ubuf,
50         __uint32_t              *len,
51         __uint32_t              flags);
52
53 extern int
54 xfs_attrmulti_attr_set(
55         struct inode            *inode,
56         unsigned char           *name,
57         const unsigned char     __user *ubuf,
58         __uint32_t              len,
59         __uint32_t              flags);
60
61 extern int
62 xfs_attrmulti_attr_remove(
63         struct inode            *inode,
64         unsigned char           *name,
65         __uint32_t              flags);
66
67 extern struct dentry *
68 xfs_handle_to_dentry(
69         struct file             *parfilp,
70         void __user             *uhandle,
71         u32                     hlen);
72
73 extern long
74 xfs_file_ioctl(
75         struct file             *filp,
76         unsigned int            cmd,
77         unsigned long           p);
78
79 extern long
80 xfs_file_compat_ioctl(
81         struct file             *file,
82         unsigned int            cmd,
83         unsigned long           arg);
84
85 #endif