xref: /linux/fs/jfs/jfs_inode.h (revision 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e)
11a59d1b8SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */
21da177e4SLinus Torvalds /*
31868f4aaSDave Kleikamp  *   Copyright (C) International Business Machines Corp., 2000-2001
41da177e4SLinus Torvalds  */
51da177e4SLinus Torvalds #ifndef	_H_JFS_INODE
61da177e4SLinus Torvalds #define _H_JFS_INODE
71da177e4SLinus Torvalds 
8d425de70SChristoph Hellwig struct fid;
9d425de70SChristoph Hellwig 
101da177e4SLinus Torvalds extern struct inode *ialloc(struct inode *, umode_t);
1102c24a82SJosef Bacik extern int jfs_fsync(struct file *, loff_t, loff_t, int);
122ca58e30SMiklos Szeredi extern int jfs_fileattr_get(struct dentry *dentry, struct fileattr *fa);
13*8782a9aeSChristian Brauner extern int jfs_fileattr_set(struct mnt_idmap *idmap,
142ca58e30SMiklos Szeredi 			    struct dentry *dentry, struct fileattr *fa);
15baab81faSAndi Kleen extern long jfs_ioctl(struct file *, unsigned int, unsigned long);
16eab1df71SDavid Howells extern struct inode *jfs_iget(struct super_block *, unsigned long);
171868f4aaSDave Kleikamp extern int jfs_commit_inode(struct inode *, int);
18a9185b41SChristoph Hellwig extern int jfs_write_inode(struct inode *, struct writeback_control *);
1962aff86fSAl Viro extern void jfs_evict_inode(struct inode *);
20aa385729SChristoph Hellwig extern void jfs_dirty_inode(struct inode *, int);
211868f4aaSDave Kleikamp extern void jfs_truncate(struct inode *);
221868f4aaSDave Kleikamp extern void jfs_truncate_nolock(struct inode *, loff_t);
231868f4aaSDave Kleikamp extern void jfs_free_zero_link(struct inode *);
241868f4aaSDave Kleikamp extern struct dentry *jfs_get_parent(struct dentry *dentry);
25d425de70SChristoph Hellwig extern struct dentry *jfs_fh_to_dentry(struct super_block *sb, struct fid *fid,
26d425de70SChristoph Hellwig 	int fh_len, int fh_type);
27d425de70SChristoph Hellwig extern struct dentry *jfs_fh_to_parent(struct super_block *sb, struct fid *fid,
28d425de70SChristoph Hellwig 	int fh_len, int fh_type);
29fa3241d2SHerbert Poetzl extern void jfs_set_inode_flags(struct inode *);
30115ff50bSDave Kleikamp extern int jfs_get_block(struct inode *, sector_t, struct buffer_head *, int);
31c1632a0fSChristian Brauner extern int jfs_setattr(struct mnt_idmap *, struct dentry *, struct iattr *);
321da177e4SLinus Torvalds 
33f5e54d6eSChristoph Hellwig extern const struct address_space_operations jfs_aops;
3492e1d5beSArjan van de Ven extern const struct inode_operations jfs_dir_inode_operations;
354b6f5d20SArjan van de Ven extern const struct file_operations jfs_dir_operations;
3692e1d5beSArjan van de Ven extern const struct inode_operations jfs_file_inode_operations;
374b6f5d20SArjan van de Ven extern const struct file_operations jfs_file_operations;
3892e1d5beSArjan van de Ven extern const struct inode_operations jfs_symlink_inode_operations;
39c7f2e1f0SDmitry Monakhov extern const struct inode_operations jfs_fast_symlink_inode_operations;
40ad28b4efSAl Viro extern const struct dentry_operations jfs_ci_dentry_operations;
411da177e4SLinus Torvalds #endif				/* _H_JFS_INODE */
42