xref: /linux/fs/btrfs/ioctl.h (revision 0eb4aaa230d725fa9b1cd758c0f17abca5597af6)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 
3 #ifndef BTRFS_IOCTL_H
4 #define BTRFS_IOCTL_H
5 
6 #include <linux/types.h>
7 
8 struct file;
9 struct dentry;
10 struct mnt_idmap;
11 struct fileattr;
12 struct btrfs_fs_info;
13 struct btrfs_ioctl_balance_args;
14 
15 long btrfs_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
16 long btrfs_compat_ioctl(struct file *file, unsigned int cmd, unsigned long arg);
17 int btrfs_fileattr_get(struct dentry *dentry, struct fileattr *fa);
18 int btrfs_fileattr_set(struct mnt_idmap *idmap,
19 		       struct dentry *dentry, struct fileattr *fa);
20 int btrfs_ioctl_get_supported_features(void __user *arg);
21 void btrfs_sync_inode_flags_to_i_flags(struct inode *inode);
22 void btrfs_update_ioctl_balance_args(struct btrfs_fs_info *fs_info,
23 				     struct btrfs_ioctl_balance_args *bargs);
24 int btrfs_uring_cmd(struct io_uring_cmd *cmd, unsigned int issue_flags);
25 void btrfs_uring_read_extent_endio(void *ctx, int err);
26 
27 #endif
28