From: Andreas Gruenbacher Date: Wed, 21 Oct 2020 14:37:54 +0000 (+0200) Subject: gfs2: Check for active reservation in gfs2_release X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=0ec9b9ea4f83303bfd8f052a3d8b2bd179b002e1;p=linux.git gfs2: Check for active reservation in gfs2_release In gfs2_release, check if the inode has an active reservation to avoid unnecessary lock taking. Signed-off-by: Andreas Gruenbacher --- diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c index b39b339feddc9..177c4d74ca303 100644 --- a/fs/gfs2/file.c +++ b/fs/gfs2/file.c @@ -716,10 +716,10 @@ static int gfs2_release(struct inode *inode, struct file *file) kfree(file->private_data); file->private_data = NULL; - if (file->f_mode & FMODE_WRITE) { + if (gfs2_rs_active(&ip->i_res)) gfs2_rs_delete(ip, &inode->i_writecount); + if (file->f_mode & FMODE_WRITE) gfs2_qa_put(ip); - } return 0; }