diff options
author | Damien Le Moal <damien.lemoal@opensource.wdc.com> | 2022-11-25 03:06:20 +0100 |
---|---|---|
committer | Damien Le Moal <damien.lemoal@opensource.wdc.com> | 2023-01-23 01:25:51 +0100 |
commit | 46a9c526eef7fb68a00321e2a9591ce5276ae92b (patch) | |
tree | 77e552f68c7c417a98f8b650ef1f2e6c92f774c7 /ipc | |
parent | zonefs: Reorganize code (diff) | |
download | linux-46a9c526eef7fb68a00321e2a9591ce5276ae92b.tar.xz linux-46a9c526eef7fb68a00321e2a9591ce5276ae92b.zip |
zonefs: Simplify IO error handling
Simplify zonefs_check_zone_condition() by moving the code that changes
an inode access rights to the new function zonefs_inode_update_mode().
Furthermore, since on mount an inode wpoffset is always zero when
zonefs_check_zone_condition() is called during an inode initialization,
the "mount" boolean argument is not necessary for the readonly zone
case. This argument is thus removed.
zonefs_io_error_cb() is also modified to use the inode offline and
zone state flags instead of checking the device zone condition. The
multiple calls to zonefs_check_zone_condition() are reduced to the first
call on entry, which allows removing the "warn" argument.
zonefs_inode_update_mode() is also used to update an inode access rights
as zonefs_io_error_cb() modifies the inode flags depending on the volume
error handling mode (defined with a mount option). Since an inode mode
change differs for read-only zones between mount time and IO error time,
the flag ZONEFS_ZONE_INIT_MODE is used to differentiate both cases.
Signed-off-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions