* [PATCH] ext4: remove old feature helpers
@ 2016-07-27 17:51 Kaho Ng
2016-08-05 11:05 ` Jan Kara
0 siblings, 1 reply; 5+ messages in thread
From: Kaho Ng @ 2016-07-27 17:51 UTC (permalink / raw)
To: tytso; +Cc: linux-ext4, Kaho Ng
Use the ext4_{has,set,clear}_feature_* helpers to replace the old
feature helpers.
Signed-off-by: Kaho Ng <ngkaho1234@gmail.com>
---
fs/ext4/ext4.h | 20 --------------------
fs/ext4/ialloc.c | 2 +-
fs/ext4/inode.c | 7 +++----
fs/ext4/ioctl.c | 6 ++----
4 files changed, 6 insertions(+), 29 deletions(-)
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
index ea31931..81a298c 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
@@ -1636,26 +1636,6 @@ static inline void ext4_clear_state_flags(struct ext4_inode_info *ei)
* Feature set definitions
*/
-/* Use the ext4_{has,set,clear}_feature_* helpers; these will be removed */
-#define EXT4_HAS_COMPAT_FEATURE(sb,mask) \
- ((EXT4_SB(sb)->s_es->s_feature_compat & cpu_to_le32(mask)) != 0)
-#define EXT4_HAS_RO_COMPAT_FEATURE(sb,mask) \
- ((EXT4_SB(sb)->s_es->s_feature_ro_compat & cpu_to_le32(mask)) != 0)
-#define EXT4_HAS_INCOMPAT_FEATURE(sb,mask) \
- ((EXT4_SB(sb)->s_es->s_feature_incompat & cpu_to_le32(mask)) != 0)
-#define EXT4_SET_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_compat |= cpu_to_le32(mask)
-#define EXT4_SET_RO_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_ro_compat |= cpu_to_le32(mask)
-#define EXT4_SET_INCOMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_incompat |= cpu_to_le32(mask)
-#define EXT4_CLEAR_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_compat &= ~cpu_to_le32(mask)
-#define EXT4_CLEAR_RO_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_ro_compat &= ~cpu_to_le32(mask)
-#define EXT4_CLEAR_INCOMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_incompat &= ~cpu_to_le32(mask)
-
#define EXT4_FEATURE_COMPAT_DIR_PREALLOC 0x0001
#define EXT4_FEATURE_COMPAT_IMAGIC_INODES 0x0002
#define EXT4_FEATURE_COMPAT_HAS_JOURNAL 0x0004
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
index 9e66cd1..170421e 100644
--- a/fs/ext4/ialloc.c
+++ b/fs/ext4/ialloc.c
@@ -802,7 +802,7 @@ struct inode *__ext4_new_inode(handle_t *handle, struct inode *dir,
} else
inode_init_owner(inode, dir, mode);
- if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
+ if (ext4_has_feature_project(sb) &&
ext4_test_inode_flag(dir, EXT4_INODE_PROJINHERIT))
ei->i_projid = EXT4_I(dir)->i_projid;
else
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 3131747..3265dc8 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -4414,7 +4414,7 @@ static inline void ext4_iget_extra_inode(struct inode *inode,
int ext4_get_projid(struct inode *inode, kprojid_t *projid)
{
- if (!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb, EXT4_FEATURE_RO_COMPAT_PROJECT))
+ if (!ext4_has_feature_project(inode->i_sb))
return -EOPNOTSUPP;
*projid = EXT4_I(inode)->i_projid;
return 0;
@@ -4481,7 +4481,7 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
inode->i_mode = le16_to_cpu(raw_inode->i_mode);
i_uid = (uid_t)le16_to_cpu(raw_inode->i_uid_low);
i_gid = (gid_t)le16_to_cpu(raw_inode->i_gid_low);
- if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
+ if (ext4_has_feature_project(sb) &&
EXT4_INODE_SIZE(sb) > EXT4_GOOD_OLD_INODE_SIZE &&
EXT4_FITS_IN_INODE(raw_inode, ei, i_projid))
i_projid = (projid_t)le32_to_cpu(raw_inode->i_projid);
@@ -4885,8 +4885,7 @@ static int ext4_do_update_inode(handle_t *handle,
}
}
- BUG_ON(!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
- EXT4_FEATURE_RO_COMPAT_PROJECT) &&
+ BUG_ON(!ext4_has_feature_project(inode->i_sb) &&
i_projid != EXT4_DEF_PROJID);
if (EXT4_INODE_SIZE(inode->i_sb) > EXT4_GOOD_OLD_INODE_SIZE &&
diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
index 10686fd..ef4430b 100644
--- a/fs/ext4/ioctl.c
+++ b/fs/ext4/ioctl.c
@@ -310,8 +310,7 @@ static int ext4_ioctl_setproject(struct file *filp, __u32 projid)
struct ext4_inode *raw_inode;
struct dquot *transfer_to[MAXQUOTAS] = { };
- if (!EXT4_HAS_RO_COMPAT_FEATURE(sb,
- EXT4_FEATURE_RO_COMPAT_PROJECT)) {
+ if (!ext4_has_feature_project(sb)) {
if (projid != EXT4_DEF_PROJID)
return -EOPNOTSUPP;
else
@@ -842,8 +841,7 @@ resizefs_out:
ext4_get_inode_flags(ei);
fa.fsx_xflags = ext4_iflags_to_xflags(ei->i_flags & EXT4_FL_USER_VISIBLE);
- if (EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
- EXT4_FEATURE_RO_COMPAT_PROJECT)) {
+ if (ext4_has_feature_project(inode->i_sb)) {
fa.fsx_projid = (__u32)from_kprojid(&init_user_ns,
EXT4_I(inode)->i_projid);
}
--
2.9.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] ext4: remove old feature helpers
2016-07-27 17:51 [PATCH] ext4: remove old feature helpers Kaho Ng
@ 2016-08-05 11:05 ` Jan Kara
2016-08-05 17:08 ` Darrick J. Wong
0 siblings, 1 reply; 5+ messages in thread
From: Jan Kara @ 2016-08-05 11:05 UTC (permalink / raw)
To: Kaho Ng; +Cc: tytso, linux-ext4
On Thu 28-07-16 01:51:40, Kaho Ng wrote:
> Use the ext4_{has,set,clear}_feature_* helpers to replace the old
> feature helpers.
>
> Signed-off-by: Kaho Ng <ngkaho1234@gmail.com>
Thanks. The patch looks good! You can add:
Reviewed-by: Jan Kara <jack@suse.cz>
Honza
> ---
> fs/ext4/ext4.h | 20 --------------------
> fs/ext4/ialloc.c | 2 +-
> fs/ext4/inode.c | 7 +++----
> fs/ext4/ioctl.c | 6 ++----
> 4 files changed, 6 insertions(+), 29 deletions(-)
>
> diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
> index ea31931..81a298c 100644
> --- a/fs/ext4/ext4.h
> +++ b/fs/ext4/ext4.h
> @@ -1636,26 +1636,6 @@ static inline void ext4_clear_state_flags(struct ext4_inode_info *ei)
> * Feature set definitions
> */
>
> -/* Use the ext4_{has,set,clear}_feature_* helpers; these will be removed */
> -#define EXT4_HAS_COMPAT_FEATURE(sb,mask) \
> - ((EXT4_SB(sb)->s_es->s_feature_compat & cpu_to_le32(mask)) != 0)
> -#define EXT4_HAS_RO_COMPAT_FEATURE(sb,mask) \
> - ((EXT4_SB(sb)->s_es->s_feature_ro_compat & cpu_to_le32(mask)) != 0)
> -#define EXT4_HAS_INCOMPAT_FEATURE(sb,mask) \
> - ((EXT4_SB(sb)->s_es->s_feature_incompat & cpu_to_le32(mask)) != 0)
> -#define EXT4_SET_COMPAT_FEATURE(sb,mask) \
> - EXT4_SB(sb)->s_es->s_feature_compat |= cpu_to_le32(mask)
> -#define EXT4_SET_RO_COMPAT_FEATURE(sb,mask) \
> - EXT4_SB(sb)->s_es->s_feature_ro_compat |= cpu_to_le32(mask)
> -#define EXT4_SET_INCOMPAT_FEATURE(sb,mask) \
> - EXT4_SB(sb)->s_es->s_feature_incompat |= cpu_to_le32(mask)
> -#define EXT4_CLEAR_COMPAT_FEATURE(sb,mask) \
> - EXT4_SB(sb)->s_es->s_feature_compat &= ~cpu_to_le32(mask)
> -#define EXT4_CLEAR_RO_COMPAT_FEATURE(sb,mask) \
> - EXT4_SB(sb)->s_es->s_feature_ro_compat &= ~cpu_to_le32(mask)
> -#define EXT4_CLEAR_INCOMPAT_FEATURE(sb,mask) \
> - EXT4_SB(sb)->s_es->s_feature_incompat &= ~cpu_to_le32(mask)
> -
> #define EXT4_FEATURE_COMPAT_DIR_PREALLOC 0x0001
> #define EXT4_FEATURE_COMPAT_IMAGIC_INODES 0x0002
> #define EXT4_FEATURE_COMPAT_HAS_JOURNAL 0x0004
> diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
> index 9e66cd1..170421e 100644
> --- a/fs/ext4/ialloc.c
> +++ b/fs/ext4/ialloc.c
> @@ -802,7 +802,7 @@ struct inode *__ext4_new_inode(handle_t *handle, struct inode *dir,
> } else
> inode_init_owner(inode, dir, mode);
>
> - if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
> + if (ext4_has_feature_project(sb) &&
> ext4_test_inode_flag(dir, EXT4_INODE_PROJINHERIT))
> ei->i_projid = EXT4_I(dir)->i_projid;
> else
> diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
> index 3131747..3265dc8 100644
> --- a/fs/ext4/inode.c
> +++ b/fs/ext4/inode.c
> @@ -4414,7 +4414,7 @@ static inline void ext4_iget_extra_inode(struct inode *inode,
>
> int ext4_get_projid(struct inode *inode, kprojid_t *projid)
> {
> - if (!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb, EXT4_FEATURE_RO_COMPAT_PROJECT))
> + if (!ext4_has_feature_project(inode->i_sb))
> return -EOPNOTSUPP;
> *projid = EXT4_I(inode)->i_projid;
> return 0;
> @@ -4481,7 +4481,7 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
> inode->i_mode = le16_to_cpu(raw_inode->i_mode);
> i_uid = (uid_t)le16_to_cpu(raw_inode->i_uid_low);
> i_gid = (gid_t)le16_to_cpu(raw_inode->i_gid_low);
> - if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
> + if (ext4_has_feature_project(sb) &&
> EXT4_INODE_SIZE(sb) > EXT4_GOOD_OLD_INODE_SIZE &&
> EXT4_FITS_IN_INODE(raw_inode, ei, i_projid))
> i_projid = (projid_t)le32_to_cpu(raw_inode->i_projid);
> @@ -4885,8 +4885,7 @@ static int ext4_do_update_inode(handle_t *handle,
> }
> }
>
> - BUG_ON(!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
> - EXT4_FEATURE_RO_COMPAT_PROJECT) &&
> + BUG_ON(!ext4_has_feature_project(inode->i_sb) &&
> i_projid != EXT4_DEF_PROJID);
>
> if (EXT4_INODE_SIZE(inode->i_sb) > EXT4_GOOD_OLD_INODE_SIZE &&
> diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
> index 10686fd..ef4430b 100644
> --- a/fs/ext4/ioctl.c
> +++ b/fs/ext4/ioctl.c
> @@ -310,8 +310,7 @@ static int ext4_ioctl_setproject(struct file *filp, __u32 projid)
> struct ext4_inode *raw_inode;
> struct dquot *transfer_to[MAXQUOTAS] = { };
>
> - if (!EXT4_HAS_RO_COMPAT_FEATURE(sb,
> - EXT4_FEATURE_RO_COMPAT_PROJECT)) {
> + if (!ext4_has_feature_project(sb)) {
> if (projid != EXT4_DEF_PROJID)
> return -EOPNOTSUPP;
> else
> @@ -842,8 +841,7 @@ resizefs_out:
> ext4_get_inode_flags(ei);
> fa.fsx_xflags = ext4_iflags_to_xflags(ei->i_flags & EXT4_FL_USER_VISIBLE);
>
> - if (EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
> - EXT4_FEATURE_RO_COMPAT_PROJECT)) {
> + if (ext4_has_feature_project(inode->i_sb)) {
> fa.fsx_projid = (__u32)from_kprojid(&init_user_ns,
> EXT4_I(inode)->i_projid);
> }
> --
> 2.9.0
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] ext4: remove old feature helpers
2016-08-05 11:05 ` Jan Kara
@ 2016-08-05 17:08 ` Darrick J. Wong
0 siblings, 0 replies; 5+ messages in thread
From: Darrick J. Wong @ 2016-08-05 17:08 UTC (permalink / raw)
To: Jan Kara; +Cc: Kaho Ng, tytso, linux-ext4
On Fri, Aug 05, 2016 at 01:05:15PM +0200, Jan Kara wrote:
> On Thu 28-07-16 01:51:40, Kaho Ng wrote:
> > Use the ext4_{has,set,clear}_feature_* helpers to replace the old
> > feature helpers.
> >
> > Signed-off-by: Kaho Ng <ngkaho1234@gmail.com>
>
> Thanks. The patch looks good! You can add:
>
> Reviewed-by: Jan Kara <jack@suse.cz>
Not sure why the original patch didn't make it to my mailbox, but
the patch looks ok, so
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
--D
>
> Honza
>
> > ---
> > fs/ext4/ext4.h | 20 --------------------
> > fs/ext4/ialloc.c | 2 +-
> > fs/ext4/inode.c | 7 +++----
> > fs/ext4/ioctl.c | 6 ++----
> > 4 files changed, 6 insertions(+), 29 deletions(-)
> >
> > diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
> > index ea31931..81a298c 100644
> > --- a/fs/ext4/ext4.h
> > +++ b/fs/ext4/ext4.h
> > @@ -1636,26 +1636,6 @@ static inline void ext4_clear_state_flags(struct ext4_inode_info *ei)
> > * Feature set definitions
> > */
> >
> > -/* Use the ext4_{has,set,clear}_feature_* helpers; these will be removed */
> > -#define EXT4_HAS_COMPAT_FEATURE(sb,mask) \
> > - ((EXT4_SB(sb)->s_es->s_feature_compat & cpu_to_le32(mask)) != 0)
> > -#define EXT4_HAS_RO_COMPAT_FEATURE(sb,mask) \
> > - ((EXT4_SB(sb)->s_es->s_feature_ro_compat & cpu_to_le32(mask)) != 0)
> > -#define EXT4_HAS_INCOMPAT_FEATURE(sb,mask) \
> > - ((EXT4_SB(sb)->s_es->s_feature_incompat & cpu_to_le32(mask)) != 0)
> > -#define EXT4_SET_COMPAT_FEATURE(sb,mask) \
> > - EXT4_SB(sb)->s_es->s_feature_compat |= cpu_to_le32(mask)
> > -#define EXT4_SET_RO_COMPAT_FEATURE(sb,mask) \
> > - EXT4_SB(sb)->s_es->s_feature_ro_compat |= cpu_to_le32(mask)
> > -#define EXT4_SET_INCOMPAT_FEATURE(sb,mask) \
> > - EXT4_SB(sb)->s_es->s_feature_incompat |= cpu_to_le32(mask)
> > -#define EXT4_CLEAR_COMPAT_FEATURE(sb,mask) \
> > - EXT4_SB(sb)->s_es->s_feature_compat &= ~cpu_to_le32(mask)
> > -#define EXT4_CLEAR_RO_COMPAT_FEATURE(sb,mask) \
> > - EXT4_SB(sb)->s_es->s_feature_ro_compat &= ~cpu_to_le32(mask)
> > -#define EXT4_CLEAR_INCOMPAT_FEATURE(sb,mask) \
> > - EXT4_SB(sb)->s_es->s_feature_incompat &= ~cpu_to_le32(mask)
> > -
> > #define EXT4_FEATURE_COMPAT_DIR_PREALLOC 0x0001
> > #define EXT4_FEATURE_COMPAT_IMAGIC_INODES 0x0002
> > #define EXT4_FEATURE_COMPAT_HAS_JOURNAL 0x0004
> > diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
> > index 9e66cd1..170421e 100644
> > --- a/fs/ext4/ialloc.c
> > +++ b/fs/ext4/ialloc.c
> > @@ -802,7 +802,7 @@ struct inode *__ext4_new_inode(handle_t *handle, struct inode *dir,
> > } else
> > inode_init_owner(inode, dir, mode);
> >
> > - if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
> > + if (ext4_has_feature_project(sb) &&
> > ext4_test_inode_flag(dir, EXT4_INODE_PROJINHERIT))
> > ei->i_projid = EXT4_I(dir)->i_projid;
> > else
> > diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
> > index 3131747..3265dc8 100644
> > --- a/fs/ext4/inode.c
> > +++ b/fs/ext4/inode.c
> > @@ -4414,7 +4414,7 @@ static inline void ext4_iget_extra_inode(struct inode *inode,
> >
> > int ext4_get_projid(struct inode *inode, kprojid_t *projid)
> > {
> > - if (!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb, EXT4_FEATURE_RO_COMPAT_PROJECT))
> > + if (!ext4_has_feature_project(inode->i_sb))
> > return -EOPNOTSUPP;
> > *projid = EXT4_I(inode)->i_projid;
> > return 0;
> > @@ -4481,7 +4481,7 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
> > inode->i_mode = le16_to_cpu(raw_inode->i_mode);
> > i_uid = (uid_t)le16_to_cpu(raw_inode->i_uid_low);
> > i_gid = (gid_t)le16_to_cpu(raw_inode->i_gid_low);
> > - if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
> > + if (ext4_has_feature_project(sb) &&
> > EXT4_INODE_SIZE(sb) > EXT4_GOOD_OLD_INODE_SIZE &&
> > EXT4_FITS_IN_INODE(raw_inode, ei, i_projid))
> > i_projid = (projid_t)le32_to_cpu(raw_inode->i_projid);
> > @@ -4885,8 +4885,7 @@ static int ext4_do_update_inode(handle_t *handle,
> > }
> > }
> >
> > - BUG_ON(!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
> > - EXT4_FEATURE_RO_COMPAT_PROJECT) &&
> > + BUG_ON(!ext4_has_feature_project(inode->i_sb) &&
> > i_projid != EXT4_DEF_PROJID);
> >
> > if (EXT4_INODE_SIZE(inode->i_sb) > EXT4_GOOD_OLD_INODE_SIZE &&
> > diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
> > index 10686fd..ef4430b 100644
> > --- a/fs/ext4/ioctl.c
> > +++ b/fs/ext4/ioctl.c
> > @@ -310,8 +310,7 @@ static int ext4_ioctl_setproject(struct file *filp, __u32 projid)
> > struct ext4_inode *raw_inode;
> > struct dquot *transfer_to[MAXQUOTAS] = { };
> >
> > - if (!EXT4_HAS_RO_COMPAT_FEATURE(sb,
> > - EXT4_FEATURE_RO_COMPAT_PROJECT)) {
> > + if (!ext4_has_feature_project(sb)) {
> > if (projid != EXT4_DEF_PROJID)
> > return -EOPNOTSUPP;
> > else
> > @@ -842,8 +841,7 @@ resizefs_out:
> > ext4_get_inode_flags(ei);
> > fa.fsx_xflags = ext4_iflags_to_xflags(ei->i_flags & EXT4_FL_USER_VISIBLE);
> >
> > - if (EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
> > - EXT4_FEATURE_RO_COMPAT_PROJECT)) {
> > + if (ext4_has_feature_project(inode->i_sb)) {
> > fa.fsx_projid = (__u32)from_kprojid(&init_user_ns,
> > EXT4_I(inode)->i_projid);
> > }
> > --
> > 2.9.0
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> --
> Jan Kara <jack@suse.com>
> SUSE Labs, CR
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH] ext4: remove old feature helpers
@ 2016-08-05 17:40 Kaho Ng
2016-09-06 3:13 ` Theodore Ts'o
0 siblings, 1 reply; 5+ messages in thread
From: Kaho Ng @ 2016-08-05 17:40 UTC (permalink / raw)
To: tytso; +Cc: jack, darrick.wong, linux-ext4, Kaho Ng
Use the ext4_{has,set,clear}_feature_* helpers to replace the old
feature helpers.
Signed-off-by: Kaho Ng <ngkaho1234@gmail.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
---
fs/ext4/ext4.h | 20 --------------------
fs/ext4/ialloc.c | 2 +-
fs/ext4/inode.c | 7 +++----
fs/ext4/ioctl.c | 6 ++----
4 files changed, 6 insertions(+), 29 deletions(-)
diff --git a/fs/ext4/ext4.h b/fs/ext4/ext4.h
index ea31931..81a298c 100644
--- a/fs/ext4/ext4.h
+++ b/fs/ext4/ext4.h
@@ -1636,26 +1636,6 @@ static inline void ext4_clear_state_flags(struct ext4_inode_info *ei)
* Feature set definitions
*/
-/* Use the ext4_{has,set,clear}_feature_* helpers; these will be removed */
-#define EXT4_HAS_COMPAT_FEATURE(sb,mask) \
- ((EXT4_SB(sb)->s_es->s_feature_compat & cpu_to_le32(mask)) != 0)
-#define EXT4_HAS_RO_COMPAT_FEATURE(sb,mask) \
- ((EXT4_SB(sb)->s_es->s_feature_ro_compat & cpu_to_le32(mask)) != 0)
-#define EXT4_HAS_INCOMPAT_FEATURE(sb,mask) \
- ((EXT4_SB(sb)->s_es->s_feature_incompat & cpu_to_le32(mask)) != 0)
-#define EXT4_SET_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_compat |= cpu_to_le32(mask)
-#define EXT4_SET_RO_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_ro_compat |= cpu_to_le32(mask)
-#define EXT4_SET_INCOMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_incompat |= cpu_to_le32(mask)
-#define EXT4_CLEAR_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_compat &= ~cpu_to_le32(mask)
-#define EXT4_CLEAR_RO_COMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_ro_compat &= ~cpu_to_le32(mask)
-#define EXT4_CLEAR_INCOMPAT_FEATURE(sb,mask) \
- EXT4_SB(sb)->s_es->s_feature_incompat &= ~cpu_to_le32(mask)
-
#define EXT4_FEATURE_COMPAT_DIR_PREALLOC 0x0001
#define EXT4_FEATURE_COMPAT_IMAGIC_INODES 0x0002
#define EXT4_FEATURE_COMPAT_HAS_JOURNAL 0x0004
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
index 9e66cd1..170421e 100644
--- a/fs/ext4/ialloc.c
+++ b/fs/ext4/ialloc.c
@@ -802,7 +802,7 @@ struct inode *__ext4_new_inode(handle_t *handle, struct inode *dir,
} else
inode_init_owner(inode, dir, mode);
- if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
+ if (ext4_has_feature_project(sb) &&
ext4_test_inode_flag(dir, EXT4_INODE_PROJINHERIT))
ei->i_projid = EXT4_I(dir)->i_projid;
else
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 3131747..3265dc8 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -4414,7 +4414,7 @@ static inline void ext4_iget_extra_inode(struct inode *inode,
int ext4_get_projid(struct inode *inode, kprojid_t *projid)
{
- if (!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb, EXT4_FEATURE_RO_COMPAT_PROJECT))
+ if (!ext4_has_feature_project(inode->i_sb))
return -EOPNOTSUPP;
*projid = EXT4_I(inode)->i_projid;
return 0;
@@ -4481,7 +4481,7 @@ struct inode *ext4_iget(struct super_block *sb, unsigned long ino)
inode->i_mode = le16_to_cpu(raw_inode->i_mode);
i_uid = (uid_t)le16_to_cpu(raw_inode->i_uid_low);
i_gid = (gid_t)le16_to_cpu(raw_inode->i_gid_low);
- if (EXT4_HAS_RO_COMPAT_FEATURE(sb, EXT4_FEATURE_RO_COMPAT_PROJECT) &&
+ if (ext4_has_feature_project(sb) &&
EXT4_INODE_SIZE(sb) > EXT4_GOOD_OLD_INODE_SIZE &&
EXT4_FITS_IN_INODE(raw_inode, ei, i_projid))
i_projid = (projid_t)le32_to_cpu(raw_inode->i_projid);
@@ -4885,8 +4885,7 @@ static int ext4_do_update_inode(handle_t *handle,
}
}
- BUG_ON(!EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
- EXT4_FEATURE_RO_COMPAT_PROJECT) &&
+ BUG_ON(!ext4_has_feature_project(inode->i_sb) &&
i_projid != EXT4_DEF_PROJID);
if (EXT4_INODE_SIZE(inode->i_sb) > EXT4_GOOD_OLD_INODE_SIZE &&
diff --git a/fs/ext4/ioctl.c b/fs/ext4/ioctl.c
index 10686fd..ef4430b 100644
--- a/fs/ext4/ioctl.c
+++ b/fs/ext4/ioctl.c
@@ -310,8 +310,7 @@ static int ext4_ioctl_setproject(struct file *filp, __u32 projid)
struct ext4_inode *raw_inode;
struct dquot *transfer_to[MAXQUOTAS] = { };
- if (!EXT4_HAS_RO_COMPAT_FEATURE(sb,
- EXT4_FEATURE_RO_COMPAT_PROJECT)) {
+ if (!ext4_has_feature_project(sb)) {
if (projid != EXT4_DEF_PROJID)
return -EOPNOTSUPP;
else
@@ -842,8 +841,7 @@ resizefs_out:
ext4_get_inode_flags(ei);
fa.fsx_xflags = ext4_iflags_to_xflags(ei->i_flags & EXT4_FL_USER_VISIBLE);
- if (EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb,
- EXT4_FEATURE_RO_COMPAT_PROJECT)) {
+ if (ext4_has_feature_project(inode->i_sb)) {
fa.fsx_projid = (__u32)from_kprojid(&init_user_ns,
EXT4_I(inode)->i_projid);
}
--
2.9.0
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] ext4: remove old feature helpers
2016-08-05 17:40 Kaho Ng
@ 2016-09-06 3:13 ` Theodore Ts'o
0 siblings, 0 replies; 5+ messages in thread
From: Theodore Ts'o @ 2016-09-06 3:13 UTC (permalink / raw)
To: Kaho Ng; +Cc: jack, darrick.wong, linux-ext4
On Sat, Aug 06, 2016 at 01:40:37AM +0800, Kaho Ng wrote:
> Use the ext4_{has,set,clear}_feature_* helpers to replace the old
> feature helpers.
>
> Signed-off-by: Kaho Ng <ngkaho1234@gmail.com>
> Reviewed-by: Jan Kara <jack@suse.cz>
> Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Thanks, applied.
- Ted
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2016-09-06 3:14 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-27 17:51 [PATCH] ext4: remove old feature helpers Kaho Ng
2016-08-05 11:05 ` Jan Kara
2016-08-05 17:08 ` Darrick J. Wong
-- strict thread matches above, loose matches on Subject: below --
2016-08-05 17:40 Kaho Ng
2016-09-06 3:13 ` Theodore Ts'o
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).