Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e5a92362 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
  fuse: invalidate target of rename
  fuse: fix kunmap in fuse_ioctl_copy_user
  fuse: prevent fuse_put_request on invalid pointer
parents 4397989f 5219f346
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
@@ -712,8 +712,10 @@ static int fuse_rename(struct inode *olddir, struct dentry *oldent,
			fuse_invalidate_attr(newdir);

		/* newent will end up negative */
		if (newent->d_inode)
		if (newent->d_inode) {
			fuse_invalidate_attr(newent->d_inode);
			fuse_invalidate_entry_cache(newent);
		}
	} else if (err == -EINTR) {
		/* If request was interrupted, DEITY only knows if the
		   rename actually took place.  If the invalidation
+3 −2
Original line number Diff line number Diff line
@@ -1063,6 +1063,7 @@ ssize_t fuse_direct_io(struct file *file, const char __user *buf,
				break;
		}
	}
	if (!IS_ERR(req))
		fuse_put_request(fc, req);
	if (res > 0)
		*ppos = pos;
@@ -1599,7 +1600,7 @@ static int fuse_ioctl_copy_user(struct page **pages, struct iovec *iov,
			kaddr += copy;
		}

		kunmap(map);
		kunmap(page);
	}

	return 0;