^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 2018 Google LLC
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #ifndef _INCFS_VFS_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #define _INCFS_VFS_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) extern const struct file_operations incfs_file_ops;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) extern const struct inode_operations incfs_file_inode_ops;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) void incfs_kill_sb(struct super_block *sb);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) struct dentry *incfs_mount_fs(struct file_system_type *type, int flags,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) const char *dev_name, void *data);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) int incfs_link(struct dentry *what, struct dentry *where);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) int incfs_unlink(struct dentry *dentry);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) static inline struct mount_info *get_mount_info(struct super_block *sb)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) struct mount_info *result = sb->s_fs_info;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) WARN_ON(!result);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) return result;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) static inline struct super_block *file_superblock(struct file *f)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) {
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) struct inode *inode = file_inode(f);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) return inode->i_sb;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) #endif