[Devel] [PATCH RHEL7 COMMIT] Revert "ms/fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns"
Konstantin Khorenko
khorenko at virtuozzo.com
Fri Jul 21 11:00:34 MSK 2017
The commit is pushed to "branch-rh7-3.10.0-514.26.1.vz7.33.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-514.26.1.vz7.33.12
------>
commit 7e1a372ff61c04b58380f3f08aefb36ee5704659
Author: Konstantin Khorenko <khorenko at virtuozzo.com>
Date: Fri Jul 21 11:56:58 2017 +0400
Revert "ms/fs: Update i_[ug]id_(read|write) to translate relative to s_user_ns"
This reverts commit 7eb85a2ff4aec4732fdd3f47b8e4077f7dd0b320.
Temporary revert due to
https://jira.sw.ru/browse/PSBM-68599
Signed-off-by: Konstantin Khorenko <khorenko at virtuozzo.com>
---
include/linux/fs.h | 50 +++++++++++++++++++++++++-------------------------
1 file changed, 25 insertions(+), 25 deletions(-)
diff --git a/include/linux/fs.h b/include/linux/fs.h
index f3b396b..7203d76 100644
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -884,6 +884,31 @@ static inline void i_size_write(struct inode *inode, loff_t i_size)
#endif
}
+/* Helper functions so that in most cases filesystems will
+ * not need to deal directly with kuid_t and kgid_t and can
+ * instead deal with the raw numeric values that are stored
+ * in the filesystem.
+ */
+static inline uid_t i_uid_read(const struct inode *inode)
+{
+ return from_kuid(&init_user_ns, inode->i_uid);
+}
+
+static inline gid_t i_gid_read(const struct inode *inode)
+{
+ return from_kgid(&init_user_ns, inode->i_gid);
+}
+
+static inline void i_uid_write(struct inode *inode, uid_t uid)
+{
+ inode->i_uid = make_kuid(&init_user_ns, uid);
+}
+
+static inline void i_gid_write(struct inode *inode, gid_t gid)
+{
+ inode->i_gid = make_kgid(&init_user_ns, gid);
+}
+
static inline unsigned iminor(const struct inode *inode)
{
return MINOR(inode->i_rdev);
@@ -1561,31 +1586,6 @@ struct super_block {
struct list_lru s_inode_lru ____cacheline_aligned_in_smp;
};
-/* Helper functions so that in most cases filesystems will
- * not need to deal directly with kuid_t and kgid_t and can
- * instead deal with the raw numeric values that are stored
- * in the filesystem.
- */
-static inline uid_t i_uid_read(const struct inode *inode)
-{
- return from_kuid(inode->i_sb->s_user_ns, inode->i_uid);
-}
-
-static inline gid_t i_gid_read(const struct inode *inode)
-{
- return from_kgid(inode->i_sb->s_user_ns, inode->i_gid);
-}
-
-static inline void i_uid_write(struct inode *inode, uid_t uid)
-{
- inode->i_uid = make_kuid(inode->i_sb->s_user_ns, uid);
-}
-
-static inline void i_gid_write(struct inode *inode, gid_t gid)
-{
- inode->i_gid = make_kgid(inode->i_sb->s_user_ns, gid);
-}
-
extern const unsigned super_block_wrapper_version;
struct super_block_wrapper {
struct super_block sb;
More information about the Devel
mailing list