summaryrefslogtreecommitdiff
path: root/include/linux/fs
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2026-07-23 13:14:09 +0100
committerMark Brown <broonie@kernel.org>2026-07-23 13:14:09 +0100
commitcf74566f126a1f637e7ff475d82b65698836f662 (patch)
tree382d23b237686108a0c672965de44938109249f0 /include/linux/fs
parenteeae692c20303436b710814d9f594e6d129404db (diff)
parentce76d9d4f5f36501013bd94bb65dd067f04b2913 (diff)
downloadlinux-next-cf74566f126a1f637e7ff475d82b65698836f662.tar.gz
linux-next-cf74566f126a1f637e7ff475d82b65698836f662.zip
Merge branch 'vfs.all' of https://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs.git
Diffstat (limited to 'include/linux/fs')
-rw-r--r--include/linux/fs/super.h8
-rw-r--r--include/linux/fs/super_types.h4
2 files changed, 11 insertions, 1 deletions
diff --git a/include/linux/fs/super.h b/include/linux/fs/super.h
index 405612678115..733d439f01ed 100644
--- a/include/linux/fs/super.h
+++ b/include/linux/fs/super.h
@@ -237,4 +237,12 @@ int thaw_super(struct super_block *super, enum freeze_holder who,
int sb_init_dio_done_wq(struct super_block *sb);
+struct file;
+struct file *fs_bdev_file_open_by_dev(dev_t dev, blk_mode_t mode, void *holder,
+ struct super_block *sb);
+struct file *fs_bdev_file_open_by_path(const char *path, blk_mode_t mode,
+ void *holder, struct super_block *sb);
+void fs_bdev_unregister(struct file *bdev_file, struct super_block *sb);
+void fs_bdev_file_release(struct file *bdev_file, struct super_block *sb);
+
#endif /* _LINUX_FS_SUPER_H */
diff --git a/include/linux/fs/super_types.h b/include/linux/fs/super_types.h
index 3bdd7f7fb9e5..a8cbafdeb36c 100644
--- a/include/linux/fs/super_types.h
+++ b/include/linux/fs/super_types.h
@@ -30,6 +30,7 @@ struct mount;
struct mtd_info;
struct quotactl_ops;
struct shrinker;
+struct super_dev;
struct unicode_map;
struct user_namespace;
struct workqueue_struct;
@@ -132,6 +133,7 @@ struct super_operations {
struct super_block {
struct list_head s_list; /* Keep this first */
dev_t s_dev; /* search index; _not_ kdev_t */
+ struct super_dev *s_super_dev; /* sget_fc()'s device table claim */
unsigned char s_blocksize_bits;
unsigned long s_blocksize;
loff_t s_maxbytes; /* Max file size */
@@ -145,7 +147,7 @@ struct super_block {
unsigned long s_magic;
struct dentry *s_root;
struct rw_semaphore s_umount;
- int s_count;
+ refcount_t s_passive;
atomic_t s_active;
#ifdef CONFIG_SECURITY
void *s_security;