Re: [PATCH 1/2] coda: fix reference counting in coda_file_mmap error path
From: Jan Harkes
Date: Thu Apr 22 2021 - 08:46:41 EST
Looks good to me.
I'm also maintaining an out of tree coda module build that people sometimes use, which has workarounds for differences between the various kernel versions.
Do you have a reference to the corresponding mmap_region change? If it is merged already I'll probably be able to find it. Is this mmap_region change expected to be backported to any lts kernels?
Jan
On April 21, 2021 9:20:11 AM EDT, "Christian König" <ckoenig.leichtzumerken@xxxxxxxxx> wrote:
>mmap_region() now calls fput() on the vma->vm_file.
>
>So we need to drop the extra reference on the coda file instead of the
>host file.
>
>Signed-off-by: Christian König <christian.koenig@xxxxxxx>
>Fixes: 1527f926fd04 ("mm: mmap: fix fput in error path v2")
>CC: stable@xxxxxxxxxxxxxxx # 5.11+
>---
> fs/coda/file.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
>diff --git a/fs/coda/file.c b/fs/coda/file.c
>index 128d63df5bfb..ef5ca22bfb3e 100644
>--- a/fs/coda/file.c
>+++ b/fs/coda/file.c
>@@ -175,10 +175,10 @@ coda_file_mmap(struct file *coda_file, struct
>vm_area_struct *vma)
> ret = call_mmap(vma->vm_file, vma);
>
> if (ret) {
>- /* if call_mmap fails, our caller will put coda_file so we
>- * should drop the reference to the host_file that we got.
>+ /* if call_mmap fails, our caller will put host_file so we
>+ * should drop the reference to the coda_file that we got.
> */
>- fput(host_file);
>+ fput(coda_file);
> kfree(cvm_ops);
> } else {
> /* here we add redirects for the open/close vm_operations */