blob: 70a0d12e427e6eea47f3da9e826dc5371383f994 [file] [log] [blame]
Thomas Gleixner1a59d1b82019-05-27 08:55:05 +02001/* SPDX-License-Identifier: GPL-2.0-or-later */
Linus Torvalds1da177e2005-04-16 15:20:36 -07002/*
Dave Kleikamp1868f4a2005-05-04 15:29:35 -05003 * Copyright (C) International Business Machines Corp., 2000-2001
Linus Torvalds1da177e2005-04-16 15:20:36 -07004 */
5#ifndef _H_JFS_INODE
6#define _H_JFS_INODE
7
Christoph Hellwigd425de72007-10-21 16:42:09 -07008struct fid;
9
Linus Torvalds1da177e2005-04-16 15:20:36 -070010extern struct inode *ialloc(struct inode *, umode_t);
Josef Bacik02c24a82011-07-16 20:44:56 -040011extern int jfs_fsync(struct file *, loff_t, loff_t, int);
Andi Kleenbaab81f2008-01-27 16:58:51 -060012extern long jfs_ioctl(struct file *, unsigned int, unsigned long);
Andi Kleenef1fc2f2008-01-27 17:02:02 -060013extern long jfs_compat_ioctl(struct file *, unsigned int, unsigned long);
David Howellseab1df72008-02-07 00:15:43 -080014extern struct inode *jfs_iget(struct super_block *, unsigned long);
Dave Kleikamp1868f4a2005-05-04 15:29:35 -050015extern int jfs_commit_inode(struct inode *, int);
Christoph Hellwiga9185b42010-03-05 09:21:37 +010016extern int jfs_write_inode(struct inode *, struct writeback_control *);
Al Viro62aff862010-06-07 00:28:54 -040017extern void jfs_evict_inode(struct inode *);
Christoph Hellwigaa385722011-05-27 06:53:02 -040018extern void jfs_dirty_inode(struct inode *, int);
Dave Kleikamp1868f4a2005-05-04 15:29:35 -050019extern void jfs_truncate(struct inode *);
20extern void jfs_truncate_nolock(struct inode *, loff_t);
21extern void jfs_free_zero_link(struct inode *);
22extern struct dentry *jfs_get_parent(struct dentry *dentry);
Christoph Hellwigd425de72007-10-21 16:42:09 -070023extern struct dentry *jfs_fh_to_dentry(struct super_block *sb, struct fid *fid,
24 int fh_len, int fh_type);
25extern struct dentry *jfs_fh_to_parent(struct super_block *sb, struct fid *fid,
26 int fh_len, int fh_type);
Herbert Poetzlfa3241d2006-02-09 09:09:16 -060027extern void jfs_set_inode_flags(struct inode *);
Dave Kleikamp115ff502006-07-26 14:52:13 -050028extern int jfs_get_block(struct inode *, sector_t, struct buffer_head *, int);
Christoph Hellwig759bfee2010-03-03 09:05:02 -050029extern int jfs_setattr(struct dentry *, struct iattr *);
Linus Torvalds1da177e2005-04-16 15:20:36 -070030
Christoph Hellwigf5e54d62006-06-28 04:26:44 -070031extern const struct address_space_operations jfs_aops;
Arjan van de Ven92e1d5b2007-02-12 00:55:39 -080032extern const struct inode_operations jfs_dir_inode_operations;
Arjan van de Ven4b6f5d22006-03-28 01:56:42 -080033extern const struct file_operations jfs_dir_operations;
Arjan van de Ven92e1d5b2007-02-12 00:55:39 -080034extern const struct inode_operations jfs_file_inode_operations;
Arjan van de Ven4b6f5d22006-03-28 01:56:42 -080035extern const struct file_operations jfs_file_operations;
Arjan van de Ven92e1d5b2007-02-12 00:55:39 -080036extern const struct inode_operations jfs_symlink_inode_operations;
Dmitry Monakhovc7f2e1f2010-04-16 08:05:50 -050037extern const struct inode_operations jfs_fast_symlink_inode_operations;
Al Viroad28b4e2009-02-20 06:00:49 +000038extern const struct dentry_operations jfs_ci_dentry_operations;
Linus Torvalds1da177e2005-04-16 15:20:36 -070039#endif /* _H_JFS_INODE */