diff options
author | Andrea Righi <andrea.righi@canonical.com> | 2023-05-21 10:28:13 +0200 |
---|---|---|
committer | Amir Goldstein <amir73il@gmail.com> | 2023-08-12 19:02:54 +0300 |
commit | adcd459ff805ce5e11956cfa1e9aa85471b6ae8d (patch) | |
tree | 529a978d9bb82a1e528c5f7fd787a2dd868abc04 | |
parent | f01d08899fd7fa808ff9b8d33ca4882ab44d42fa (diff) |
ovl: validate superblock in OVL_FS()
When CONFIG_OVERLAY_FS_DEBUG is enabled add an explicit check to make
sure that OVL_FS() is always used with a valid overlayfs superblock.
Otherwise trigger a WARN_ON_ONCE().
Reviewed-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Andrea Righi <andrea.righi@canonical.com>
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
-rw-r--r-- | fs/overlayfs/ovl_entry.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/overlayfs/ovl_entry.h b/fs/overlayfs/ovl_entry.h index edb457544b5f..e9539f98e86a 100644 --- a/fs/overlayfs/ovl_entry.h +++ b/fs/overlayfs/ovl_entry.h @@ -121,6 +121,9 @@ extern struct file_system_type ovl_fs_type; static inline struct ovl_fs *OVL_FS(struct super_block *sb) { + if (IS_ENABLED(CONFIG_OVERLAY_FS_DEBUG)) + WARN_ON_ONCE(sb->s_type != &ovl_fs_type); + return (struct ovl_fs *)sb->s_fs_info; } |