^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) // SPDX-License-Identifier: GPL-2.0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * Copyright (c) 2000-2003,2005 Silicon Graphics, Inc.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) * All Rights Reserved.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #ifndef __XFS_IOPS_H__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #define __XFS_IOPS_H__
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) struct xfs_inode;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) extern const struct file_operations xfs_file_operations;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) extern const struct file_operations xfs_dir_file_operations;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) extern ssize_t xfs_vn_listxattr(struct dentry *, char *data, size_t size);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) * Internal setattr interfaces.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) #define XFS_ATTR_NOACL 0x01 /* Don't call posix_acl_chmod */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) extern void xfs_setattr_time(struct xfs_inode *ip, struct iattr *iattr);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) extern int xfs_setattr_nonsize(struct xfs_inode *ip, struct iattr *vap,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) int flags);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) extern int xfs_vn_setattr_nonsize(struct dentry *dentry, struct iattr *vap);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) extern int xfs_vn_setattr_size(struct dentry *dentry, struct iattr *vap);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) #endif /* __XFS_IOPS_H__ */