* [PATCH 6.1.y] udf: Convert udf_mkdir() to new directory iteration code
@ 2024-07-25 13:53 Sergio González Collado
2024-07-25 14:21 ` Greg KH
0 siblings, 1 reply; 4+ messages in thread
From: Sergio González Collado @ 2024-07-25 13:53 UTC (permalink / raw)
To: stable
Cc: linux-kernel-mentees, Jan Kara, Sergio González Collado,
syzbot+600a32676df180ebc4af
From: Jan Kara <jack@suse.cz>
[ Upstream commit 00bce6f792caccefa73daeaf9bde82d24d50037f ]
Convert udf_mkdir() to new directory iteration code.
Signed-off-by: Jan Kara <jack@suse.cz>
(cherry picked from commit 00bce6f792caccefa73daeaf9bde82d24d50037f)
Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
Reported-by: syzbot+600a32676df180ebc4af@syzkaller.appspotmail.com
---
fs/udf/namei.c | 48 +++++++++++++++++++++---------------------------
1 file changed, 21 insertions(+), 27 deletions(-)
diff --git a/fs/udf/namei.c b/fs/udf/namei.c
index 7c95c549dd64..a33e6d762716 100644
--- a/fs/udf/namei.c
+++ b/fs/udf/namei.c
@@ -665,8 +665,7 @@ static int udf_mkdir(struct user_namespace *mnt_userns, struct inode *dir,
struct dentry *dentry, umode_t mode)
{
struct inode *inode;
- struct udf_fileident_bh fibh;
- struct fileIdentDesc cfi, *fi;
+ struct udf_fileident_iter iter;
int err;
struct udf_inode_info *dinfo = UDF_I(dir);
struct udf_inode_info *iinfo;
@@ -678,47 +677,42 @@ static int udf_mkdir(struct user_namespace *mnt_userns, struct inode *dir,
iinfo = UDF_I(inode);
inode->i_op = &udf_dir_inode_operations;
inode->i_fop = &udf_dir_operations;
- fi = udf_add_entry(inode, NULL, &fibh, &cfi, &err);
- if (!fi) {
- inode_dec_link_count(inode);
+ err = udf_fiiter_add_entry(inode, NULL, &iter);
+ if (err) {
+ clear_nlink(inode);
discard_new_inode(inode);
- goto out;
+ return err;
}
set_nlink(inode, 2);
- cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize);
- cfi.icb.extLocation = cpu_to_lelb(dinfo->i_location);
- *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse =
+ iter.fi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize);
+ iter.fi.icb.extLocation = cpu_to_lelb(dinfo->i_location);
+ *(__le32 *)((struct allocDescImpUse *)iter.fi.icb.impUse)->impUse =
cpu_to_le32(dinfo->i_unique & 0x00000000FFFFFFFFUL);
- cfi.fileCharacteristics =
+ iter.fi.fileCharacteristics =
FID_FILE_CHAR_DIRECTORY | FID_FILE_CHAR_PARENT;
- udf_write_fi(inode, &cfi, fi, &fibh, NULL, NULL);
- brelse(fibh.sbh);
+ udf_fiiter_write_fi(&iter, NULL);
+ udf_fiiter_release(&iter);
mark_inode_dirty(inode);
- fi = udf_add_entry(dir, dentry, &fibh, &cfi, &err);
- if (!fi) {
+ err = udf_fiiter_add_entry(dir, dentry, &iter);
+ if (err) {
clear_nlink(inode);
- mark_inode_dirty(inode);
discard_new_inode(inode);
- goto out;
+ return err;
}
- cfi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize);
- cfi.icb.extLocation = cpu_to_lelb(iinfo->i_location);
- *(__le32 *)((struct allocDescImpUse *)cfi.icb.impUse)->impUse =
+ iter.fi.icb.extLength = cpu_to_le32(inode->i_sb->s_blocksize);
+ iter.fi.icb.extLocation = cpu_to_lelb(iinfo->i_location);
+ *(__le32 *)((struct allocDescImpUse *)iter.fi.icb.impUse)->impUse =
cpu_to_le32(iinfo->i_unique & 0x00000000FFFFFFFFUL);
- cfi.fileCharacteristics |= FID_FILE_CHAR_DIRECTORY;
- udf_write_fi(dir, &cfi, fi, &fibh, NULL, NULL);
+ iter.fi.fileCharacteristics |= FID_FILE_CHAR_DIRECTORY;
+ udf_fiiter_write_fi(&iter, NULL);
+ udf_fiiter_release(&iter);
inc_nlink(dir);
dir->i_ctime = dir->i_mtime = current_time(dir);
mark_inode_dirty(dir);
d_instantiate_new(dentry, inode);
- if (fibh.sbh != fibh.ebh)
- brelse(fibh.ebh);
- brelse(fibh.sbh);
- err = 0;
-out:
- return err;
+ return 0;
}
static int empty_dir(struct inode *dir)
--
2.39.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH 6.1.y] udf: Convert udf_mkdir() to new directory iteration code
2024-07-25 13:53 [PATCH 6.1.y] udf: Convert udf_mkdir() to new directory iteration code Sergio González Collado
@ 2024-07-25 14:21 ` Greg KH
2024-07-25 15:45 ` Sergio González Collado
0 siblings, 1 reply; 4+ messages in thread
From: Greg KH @ 2024-07-25 14:21 UTC (permalink / raw)
To: Sergio González Collado
Cc: stable, linux-kernel-mentees, Jan Kara,
syzbot+600a32676df180ebc4af
On Thu, Jul 25, 2024 at 03:53:13PM +0200, Sergio González Collado wrote:
> From: Jan Kara <jack@suse.cz>
>
> [ Upstream commit 00bce6f792caccefa73daeaf9bde82d24d50037f ]
>
> Convert udf_mkdir() to new directory iteration code.
>
> Signed-off-by: Jan Kara <jack@suse.cz>
> (cherry picked from commit 00bce6f792caccefa73daeaf9bde82d24d50037f)
> Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
You changed things in this commit and didn't say what or why you did so
:(
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 6.1.y] udf: Convert udf_mkdir() to new directory iteration code
2024-07-25 14:21 ` Greg KH
@ 2024-07-25 15:45 ` Sergio González Collado
2024-07-25 15:55 ` Greg KH
0 siblings, 1 reply; 4+ messages in thread
From: Sergio González Collado @ 2024-07-25 15:45 UTC (permalink / raw)
To: Greg KH; +Cc: stable, linux-kernel-mentees, Jan Kara,
syzbot+600a32676df180ebc4af
Hello,
Thanks for your feedback. Honestly it was a clean cherry-pick. I'm
not aware I have changed anything ... but I can be mistaken.
I checked with the original commit, and the changes seem the same to
me, although the changes are not in the same line numbers.
Is that change in the line numbers what you mean?
Thanks!
On Thu, 25 Jul 2024 at 16:21, Greg KH <gregkh@linuxfoundation.org> wrote:
>
> On Thu, Jul 25, 2024 at 03:53:13PM +0200, Sergio González Collado wrote:
> > From: Jan Kara <jack@suse.cz>
> >
> > [ Upstream commit 00bce6f792caccefa73daeaf9bde82d24d50037f ]
> >
> > Convert udf_mkdir() to new directory iteration code.
> >
> > Signed-off-by: Jan Kara <jack@suse.cz>
> > (cherry picked from commit 00bce6f792caccefa73daeaf9bde82d24d50037f)
> > Signed-off-by: Sergio González Collado <sergio.collado@gmail.com>
>
> You changed things in this commit and didn't say what or why you did so
> :(
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH 6.1.y] udf: Convert udf_mkdir() to new directory iteration code
2024-07-25 15:45 ` Sergio González Collado
@ 2024-07-25 15:55 ` Greg KH
0 siblings, 0 replies; 4+ messages in thread
From: Greg KH @ 2024-07-25 15:55 UTC (permalink / raw)
To: Sergio González Collado
Cc: stable, linux-kernel-mentees, Jan Kara,
syzbot+600a32676df180ebc4af
On Thu, Jul 25, 2024 at 05:45:38PM +0200, Sergio González Collado wrote:
> Hello,
>
> Thanks for your feedback. Honestly it was a clean cherry-pick. I'm
> not aware I have changed anything ... but I can be mistaken.
> I checked with the original commit, and the changes seem the same to
> me, although the changes are not in the same line numbers.
> Is that change in the line numbers what you mean?
Do a clean cherry-pick and try to build the result, your patch was
different...
thanks,
greg k-h
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-07-25 15:55 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-25 13:53 [PATCH 6.1.y] udf: Convert udf_mkdir() to new directory iteration code Sergio González Collado
2024-07-25 14:21 ` Greg KH
2024-07-25 15:45 ` Sergio González Collado
2024-07-25 15:55 ` Greg KH
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).