[Devel] [PATCH VZ10 v4 30/44] fixup! ve/kernfs: implement ve-based permissions
Vladimir Riabchun
vladimir.riabchun at virtuozzo.com
Wed Jun 3 00:10:48 MSK 2026
1. Have kernfs_super_info->ve unconditionally
2. Add missing static inline for stub functions
3. Fix kernfs_ve_allowed arguments so they match
https://virtuozzo.atlassian.net/browse/VSTOR-130116
Feature: !CONFIG_VE build
Signed-off-by: Vladimir Riabchun <vladimir.riabchun at virtuozzo.com>
---
fs/kernfs/kernfs-internal.h | 3 +--
fs/kernfs/kernfs-ve.h | 10 +++++-----
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/fs/kernfs/kernfs-internal.h b/fs/kernfs/kernfs-internal.h
index 6f5b79e0d1f6..b58af14da1d1 100644
--- a/fs/kernfs/kernfs-internal.h
+++ b/fs/kernfs/kernfs-internal.h
@@ -97,10 +97,9 @@ struct kernfs_super_info {
/* anchored at kernfs_root->supers, protected by kernfs_rwsem */
struct list_head node;
-#ifdef CONFIG_VE
+
struct ve_struct *ve;
off_t ve_perms_off;
-#endif
};
#define kernfs_info(SB) ((struct kernfs_super_info *)(SB->s_fs_info))
diff --git a/fs/kernfs/kernfs-ve.h b/fs/kernfs/kernfs-ve.h
index 116898829e07..91104e0e280d 100644
--- a/fs/kernfs/kernfs-ve.h
+++ b/fs/kernfs/kernfs-ve.h
@@ -25,10 +25,10 @@ int kernfs_ve_allowed(struct kernfs_node *kn);
bool kernfs_d_visible(struct kernfs_node *kn, struct kernfs_super_info *info);
-#else // CONFIG_VE
+#else /* CONFIG_VE */
-void kernfs_get_ve_perms(struct kernfs_node *kn) { }
-void kernfs_put_ve_perms(struct kernfs_node *kn) { }
+static inline void kernfs_get_ve_perms(struct kernfs_node *kn) { }
+static inline void kernfs_put_ve_perms(struct kernfs_node *kn) { }
static inline int kernfs_ve_permission(struct kernfs_node *kn,
struct kernfs_super_info *info, int mask)
@@ -36,12 +36,12 @@ static inline int kernfs_ve_permission(struct kernfs_node *kn,
return 0;
}
-static inline int kernfs_ve_allowed(void)
+static inline int kernfs_ve_allowed(struct kernfs_node *kn)
{
return 1;
}
-bool kernfs_d_visible(struct kernfs_node *kn, struct kernfs_super_info *info)
+static inline bool kernfs_d_visible(struct kernfs_node *kn, struct kernfs_super_info *info)
{
return true;
}
--
2.47.1
More information about the Devel
mailing list