xfs: embedded the attrlist cursor into struct xfs_attr_list_context
[linux-2.6-microblaze.git] / fs / xfs / xfs_ioctl.h
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2008 Silicon Graphics, Inc.
4  * All Rights Reserved.
5  */
6 #ifndef __XFS_IOCTL_H__
7 #define __XFS_IOCTL_H__
8
9 struct xfs_bstat;
10 struct xfs_ibulk;
11 struct xfs_inogrp;
12
13
14 extern int
15 xfs_ioc_space(
16         struct file             *filp,
17         xfs_flock64_t           *bf);
18
19 int
20 xfs_ioc_swapext(
21         xfs_swapext_t   *sxp);
22
23 extern int
24 xfs_find_handle(
25         unsigned int            cmd,
26         xfs_fsop_handlereq_t    *hreq);
27
28 extern int
29 xfs_open_by_handle(
30         struct file             *parfilp,
31         xfs_fsop_handlereq_t    *hreq);
32
33 extern int
34 xfs_readlink_by_handle(
35         struct file             *parfilp,
36         xfs_fsop_handlereq_t    *hreq);
37
38 int xfs_ioc_attrmulti_one(struct file *parfilp, struct inode *inode,
39                 uint32_t opcode, void __user *uname, void __user *value,
40                 uint32_t *len, uint32_t flags);
41 int xfs_ioc_attr_list(struct xfs_inode *dp, void __user *ubuf, int bufsize,
42         int flags, struct xfs_attrlist_cursor __user *ucursor);
43
44 extern struct dentry *
45 xfs_handle_to_dentry(
46         struct file             *parfilp,
47         void __user             *uhandle,
48         u32                     hlen);
49
50 extern long
51 xfs_file_ioctl(
52         struct file             *filp,
53         unsigned int            cmd,
54         unsigned long           p);
55
56 extern long
57 xfs_file_compat_ioctl(
58         struct file             *file,
59         unsigned int            cmd,
60         unsigned long           arg);
61
62 int xfs_fsbulkstat_one_fmt(struct xfs_ibulk *breq,
63                            const struct xfs_bulkstat *bstat);
64 int xfs_fsinumbers_fmt(struct xfs_ibulk *breq, const struct xfs_inumbers *igrp);
65
66 #endif