This reduces duplicate code and ensures that a “potential data loss”
warning is available if the unwritten conversion fails.
Signed-off-by: Baokun Li <libaokun1@huawei.com>
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: Zhang Yi <yi.zhang@huawei.com>
Link: https://patch.msgid.link/20250122110533.4116662-2-libaokun@huaweicloud.com
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
 
 int ext4_put_io_end(ext4_io_end_t *io_end)
 {
-       int err = 0;
-
        if (refcount_dec_and_test(&io_end->count)) {
-               if (io_end->flag & EXT4_IO_END_UNWRITTEN) {
-                       err = ext4_convert_unwritten_io_end_vec(io_end->handle,
-                                                               io_end);
-                       io_end->handle = NULL;
-                       ext4_clear_io_unwritten_flag(io_end);
-               }
+               if (io_end->flag & EXT4_IO_END_UNWRITTEN)
+                       return ext4_end_io_end(io_end);
+
                ext4_release_io_end(io_end);
        }
-       return err;
+       return 0;
 }
 
 ext4_io_end_t *ext4_get_io_end(ext4_io_end_t *io_end)