summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2023-02-24 19:27:55 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2023-02-24 19:27:55 -0800
commit489fa31ea873282b41046d412ec741f93946fc2d (patch)
tree848c68189754fdb52b6b37b67f4b1f312513d918 /fs
parent3df88c6a175d883b58fc3c31e36c94eb5e2ad180 (diff)
parent39ecb653f671bbccd4a3c40f7f803f2874252f81 (diff)
Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull misc vfs updates from Al Viro: "Assorted stuff that didn't fit anywhere else" * 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: nsfs: repair kernel-doc for ns_match() nsfs: add compat ioctl handler fs/cramfs: Convert kmap() to kmap_local_data()
Diffstat (limited to 'fs')
-rw-r--r--fs/cramfs/inode.c9
-rw-r--r--fs/nsfs.c3
2 files changed, 6 insertions, 6 deletions
diff --git a/fs/cramfs/inode.c b/fs/cramfs/inode.c
index 45a65c400bd0..e3d168911dbe 100644
--- a/fs/cramfs/inode.c
+++ b/fs/cramfs/inode.c
@@ -238,8 +238,7 @@ static void *cramfs_blkdev_read(struct super_block *sb, unsigned int offset,
struct page *page = pages[i];
if (page) {
- memcpy(data, kmap(page), PAGE_SIZE);
- kunmap(page);
+ memcpy_from_page(data, page, 0, PAGE_SIZE);
put_page(page);
} else
memset(data, 0, PAGE_SIZE);
@@ -815,7 +814,7 @@ static int cramfs_read_folio(struct file *file, struct folio *folio)
maxblock = (inode->i_size + PAGE_SIZE - 1) >> PAGE_SHIFT;
bytes_filled = 0;
- pgdata = kmap(page);
+ pgdata = kmap_local_page(page);
if (page->index < maxblock) {
struct super_block *sb = inode->i_sb;
@@ -903,13 +902,13 @@ static int cramfs_read_folio(struct file *file, struct folio *folio)
memset(pgdata + bytes_filled, 0, PAGE_SIZE - bytes_filled);
flush_dcache_page(page);
- kunmap(page);
+ kunmap_local(pgdata);
SetPageUptodate(page);
unlock_page(page);
return 0;
err:
- kunmap(page);
+ kunmap_local(pgdata);
ClearPageUptodate(page);
SetPageError(page);
unlock_page(page);
diff --git a/fs/nsfs.c b/fs/nsfs.c
index 3506f6074288..f8df60b3b901 100644
--- a/fs/nsfs.c
+++ b/fs/nsfs.c
@@ -21,6 +21,7 @@ static long ns_ioctl(struct file *filp, unsigned int ioctl,
static const struct file_operations ns_file_operations = {
.llseek = no_llseek,
.unlocked_ioctl = ns_ioctl,
+ .compat_ioctl = compat_ptr_ioctl,
};
static char *ns_dname(struct dentry *dentry, char *buffer, int buflen)
@@ -254,7 +255,7 @@ out_invalid:
/**
* ns_match() - Returns true if current namespace matches dev/ino provided.
- * @ns_common: current ns
+ * @ns: current namespace
* @dev: dev_t from nsfs that will be matched against current nsfs
* @ino: ino_t from nsfs that will be matched against current nsfs
*