zonefs: Reduce struct zonefs_inode_info size
authorDamien Le Moal <damien.lemoal@opensource.wdc.com>
Thu, 24 Nov 2022 10:43:30 +0000 (19:43 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 6 Apr 2023 10:10:34 +0000 (12:10 +0200)
commit7558b249cb4e77b2cf58725895e05bbe0fd1a80e
tree5b31d95e50b7716c98d6e7e89621aaaeba7673bd
parent3741898b169476c17ece7962e5acf415c7041265
zonefs: Reduce struct zonefs_inode_info size

[ Upstream commit 34422914dc00b291d1c47dbdabe93b154c2f2b25 ]

Instead of using the i_ztype field in struct zonefs_inode_info to
indicate the zone type of an inode, introduce the new inode flag
ZONEFS_ZONE_CNV to be set in the i_flags field of struct
zonefs_inode_info to identify conventional zones. If this flag is not
set, the zone of an inode is considered to be a sequential zone.

The helpers zonefs_zone_is_cnv(), zonefs_zone_is_seq(),
zonefs_inode_is_cnv() and zonefs_inode_is_seq() are introduced to
simplify testing the zone type of a struct zonefs_inode_info and of a
struct inode.

Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Stable-dep-of: 88b170088ad2 ("zonefs: Fix error message in zonefs_file_dio_append()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
fs/zonefs/file.c
fs/zonefs/super.c
fs/zonefs/zonefs.h