From: Steve French Date: Tue, 10 Dec 2019 04:34:10 +0000 (-0600) Subject: SMB3: Fix crash in SMB2_open_init due to uninitialized field in compounding path X-Git-Tag: v5.15~4896^2~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e0fc5b1153b81571d6ff80902a54c3eb13319b33;p=platform%2Fkernel%2Flinux-starfive.git SMB3: Fix crash in SMB2_open_init due to uninitialized field in compounding path Ran into an intermittent crash in SMB2_open_init+0x2f6/0x970 due to oparms.cifs_sb not being initialized when called from: smb2_compound_op+0x45d/0x1690 Zero the whole oparms struct in the compounding path before setting up the oparms so we don't risk any uninitialized fields. Fixes: fdef665ba44a ("smb3: fix mode passed in on create for modetosid mount option") Signed-off-by: Steve French Acked-by: Ronnie Sahlberg Reviewed-by: Pavel Shilovsky --- diff --git a/fs/cifs/smb2inode.c b/fs/cifs/smb2inode.c index 18c7a33..5ef5e97 100644 --- a/fs/cifs/smb2inode.c +++ b/fs/cifs/smb2inode.c @@ -95,6 +95,7 @@ smb2_compound_op(const unsigned int xid, struct cifs_tcon *tcon, goto finished; } + memset(&oparms, 0, sizeof(struct cifs_open_parms)); oparms.tcon = tcon; oparms.desired_access = desired_access; oparms.disposition = create_disposition;