• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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,
42 		      size_t bufsize, int flags,
43 		      struct xfs_attrlist_cursor __user *ucursor);
44 
45 extern struct dentry *
46 xfs_handle_to_dentry(
47 	struct file		*parfilp,
48 	void __user		*uhandle,
49 	u32			hlen);
50 
51 extern int
52 xfs_fileattr_get(
53 	struct dentry		*dentry,
54 	struct fileattr		*fa);
55 
56 extern int
57 xfs_fileattr_set(
58 	struct user_namespace	*mnt_userns,
59 	struct dentry		*dentry,
60 	struct fileattr		*fa);
61 
62 extern long
63 xfs_file_ioctl(
64 	struct file		*filp,
65 	unsigned int		cmd,
66 	unsigned long		p);
67 
68 extern long
69 xfs_file_compat_ioctl(
70 	struct file		*file,
71 	unsigned int		cmd,
72 	unsigned long		arg);
73 
74 int xfs_fsbulkstat_one_fmt(struct xfs_ibulk *breq,
75 			   const struct xfs_bulkstat *bstat);
76 int xfs_fsinumbers_fmt(struct xfs_ibulk *breq, const struct xfs_inumbers *igrp);
77 
78 #endif
79