diff options
author | Jan Kara <jack@suse.cz> | 2023-01-19 14:44:34 +0300 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2023-01-26 18:46:34 +0300 |
commit | 96eeaaaea592079fcbf0b18a2b6f99165b32c942 (patch) | |
tree | 84cae3c722c345d7bccadfcbea33ff8d7d2c49fb /fs/udf | |
parent | 2d532616c768c7473b7ebcf39aa16c824c73b7fc (diff) | |
download | linux-96eeaaaea592079fcbf0b18a2b6f99165b32c942.tar.xz |
udf: Simplify error handling in udf_file_write_iter()
When udf_expand_file_adinicb() fails, we can now use the standard exit
path instead of implementing our own.
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/udf')
-rw-r--r-- | fs/udf/file.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/fs/udf/file.c b/fs/udf/file.c index 60524814c594..596d703fb6c8 100644 --- a/fs/udf/file.c +++ b/fs/udf/file.c @@ -140,7 +140,6 @@ static ssize_t udf_file_write_iter(struct kiocb *iocb, struct iov_iter *from) struct file *file = iocb->ki_filp; struct inode *inode = file_inode(file); struct udf_inode_info *iinfo = UDF_I(inode); - int err; inode_lock(inode); @@ -151,12 +150,9 @@ static ssize_t udf_file_write_iter(struct kiocb *iocb, struct iov_iter *from) if (iinfo->i_alloc_type == ICBTAG_FLAG_AD_IN_ICB && inode->i_sb->s_blocksize < (udf_file_entry_alloc_offset(inode) + iocb->ki_pos + iov_iter_count(from))) { - err = udf_expand_file_adinicb(inode); - if (err) { - inode_unlock(inode); - udf_debug("udf_expand_adinicb: err=%d\n", err); - return err; - } + retval = udf_expand_file_adinicb(inode); + if (retval) + goto out; } retval = __generic_file_write_iter(iocb, from); |