coda: fix reference counting in coda_file_mmap error path
authorChristian König <christian.koenig@amd.com>
Fri, 23 Apr 2021 21:28:51 +0000 (14:28 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 23 Apr 2021 21:42:39 +0000 (14:42 -0700)
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.

Link: https://lkml.kernel.org/r/20210421132012.82354-1-christian.koenig@amd.com
Fixes: 1527f926fd04 ("mm: mmap: fix fput in error path v2")
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Acked-by: Jan Harkes <jaharkes@cs.cmu.edu>
Cc: Miklos Szeredi <miklos@szeredi.hu>
Cc: Jason Gunthorpe <jgg@ziepe.ca>
Cc: <stable@vger.kernel.org> [5.11+]
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/coda/file.c

index 128d63d..ef5ca22 100644 (file)
@@ -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 */