On Fri, 31 Jan 2014 11:46:05 +0100, Andreas Rohner wrote:
> This patch adds the nilfs_suinfo_update structure, which contains the
> information needed to update one segment usage entry. The flags
> specify, which fields need to be updated.
>
> Signed-off-by: Andreas Rohner <[email protected]>
Applied to my github repository.
> ---
> include/linux/nilfs2_fs.h | 42 ++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 42 insertions(+)
>
> diff --git a/include/linux/nilfs2_fs.h b/include/linux/nilfs2_fs.h
> index 9875576..2526578 100644
> --- a/include/linux/nilfs2_fs.h
> +++ b/include/linux/nilfs2_fs.h
> @@ -710,6 +710,48 @@ static inline int nilfs_suinfo_clean(const struct
> nilfs_suinfo *si)
> }
>
> /* ioctl */
> +/**
> + * nilfs_suinfo_update - segment usage information update
> + * @sup_segnum: segment number
> + * @sup_flags: flags for which fields are active in sup_sui
> + * @sup_reserved: reserved necessary for alignment
> + * @sup_sui: segment usage information
> + */
> +struct nilfs_suinfo_update {
> + __u64 sup_segnum;
> + __u32 sup_flags;
> + __u32 sup_reserved;
> + struct nilfs_suinfo sup_sui;
> +};
> +
> +enum {
> + NILFS_SUINFO_UPDATE_LASTMOD,
> + NILFS_SUINFO_UPDATE_NBLOCKS,
> + NILFS_SUINFO_UPDATE_FLAGS,
> + __NR_NILFS_SUINFO_UPDATE_FIELDS,
> +};
> +
> +#define NILFS_SUINFO_UPDATE_FNS(flag, name) \
> +static inline void \
> +nilfs_suinfo_update_set_##name(struct nilfs_suinfo_update *sup)
> \
> +{ \
> + sup->sup_flags |= 1UL << NILFS_SUINFO_UPDATE_##flag; \
> +} \
> +static inline void \
> +nilfs_suinfo_update_clear_##name(struct nilfs_suinfo_update *sup) \
> +{ \
> + sup->sup_flags &= ~(1UL << NILFS_SUINFO_UPDATE_##flag); \
> +} \
> +static inline int \
> +nilfs_suinfo_update_##name(const struct nilfs_suinfo_update *sup) \
> +{ \
> + return !!(sup->sup_flags & (1UL << NILFS_SUINFO_UPDATE_##flag));\
> +}
> +
> +NILFS_SUINFO_UPDATE_FNS(LASTMOD, lastmod)
> +NILFS_SUINFO_UPDATE_FNS(NBLOCKS, nblocks)
> +NILFS_SUINFO_UPDATE_FNS(FLAGS, flags)
> +
> enum {
> NILFS_CHECKPOINT,
> NILFS_SNAPSHOT,
> --
> 1.8.5.3
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html