blob: d97ba934a2ac8df74ff3a07cf18f7ad4cd53ddc0 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
Nathan Scott7b718762005-11-02 14:58:39 +11002 * Copyright (c) 2000-2003,2005 Silicon Graphics, Inc.
3 * All Rights Reserved.
Linus Torvalds1da177e2005-04-16 15:20:36 -07004 *
Nathan Scott7b718762005-11-02 14:58:39 +11005 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License as
Linus Torvalds1da177e2005-04-16 15:20:36 -07007 * published by the Free Software Foundation.
8 *
Nathan Scott7b718762005-11-02 14:58:39 +11009 * 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.
Linus Torvalds1da177e2005-04-16 15:20:36 -070013 *
Nathan Scott7b718762005-11-02 14:58:39 +110014 * 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
Linus Torvalds1da177e2005-04-16 15:20:36 -070017 */
18#ifndef __XFS_IOPS_H__
19#define __XFS_IOPS_H__
20
Arjan van de Venc5ef1c42007-02-12 00:55:40 -080021extern const struct inode_operations xfs_inode_operations;
22extern const struct inode_operations xfs_dir_inode_operations;
Barry Naujok384f3ce2008-05-21 16:58:22 +100023extern const struct inode_operations xfs_dir_ci_inode_operations;
Arjan van de Venc5ef1c42007-02-12 00:55:40 -080024extern const struct inode_operations xfs_symlink_inode_operations;
Linus Torvalds1da177e2005-04-16 15:20:36 -070025
Arjan van de Ven4b6f5d22006-03-28 01:56:42 -080026extern const struct file_operations xfs_file_operations;
27extern const struct file_operations xfs_dir_file_operations;
28extern const struct file_operations xfs_invis_file_operations;
Linus Torvalds1da177e2005-04-16 15:20:36 -070029
Lachlan McIlroy0ec58512008-06-23 13:23:01 +100030extern ssize_t xfs_vn_listxattr(struct dentry *, char *data, size_t size);
Linus Torvalds1da177e2005-04-16 15:20:36 -070031
Nathan Scott4aeb6642005-11-02 11:43:58 +110032struct xfs_inode;
33extern void xfs_ichgtime(struct xfs_inode *, int);
34extern void xfs_ichgtime_fast(struct xfs_inode *, struct inode *, int);
35
Christoph Hellwig739bfb22007-08-29 10:58:01 +100036#define xfs_vtoi(vp) \
37 ((struct xfs_inode *)vn_to_inode(vp)->i_private)
38
39#define XFS_I(inode) \
40 ((struct xfs_inode *)(inode)->i_private)
41
Linus Torvalds1da177e2005-04-16 15:20:36 -070042#endif /* __XFS_IOPS_H__ */