Implement ->proc_read_buf() so procfs copies what is read to userspace after it unpinned the entry.
Signed-off-by: Christian Brauner (Amutable) <[email protected]> --- arch/xtensa/platforms/iss/simdisk.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/xtensa/platforms/iss/simdisk.c b/arch/xtensa/platforms/iss/simdisk.c index b2f9e7f3ade3..b597d8642e8a 100644 --- a/arch/xtensa/platforms/iss/simdisk.c +++ b/arch/xtensa/platforms/iss/simdisk.c @@ -234,7 +234,7 @@ static int simdisk_detach(struct simdisk *dev) return err; } -static ssize_t proc_read_simdisk(struct file *file, char __user *buf, +static ssize_t proc_read_simdisk(struct file *file, char *buf, size_t size, loff_t *ppos) { struct simdisk *dev = pde_data(file_inode(file)); @@ -250,7 +250,7 @@ static ssize_t proc_read_simdisk(struct file *file, char __user *buf, len = scnprintf(temp, PAGE_SIZE + 2, "%s\n", dev->filename ?: ""); spin_unlock(&dev->lock); - len = simple_read_from_buffer(buf, size, ppos, temp, len); + len = memory_read_from_buffer(buf, size, ppos, temp, len); kfree(temp); return len; } @@ -280,7 +280,7 @@ static ssize_t proc_write_simdisk(struct file *file, char *buf, } static const struct proc_ops simdisk_proc_ops = { - .proc_read = proc_read_simdisk, + .proc_read_buf = proc_read_simdisk, .proc_write_buf = proc_write_simdisk, .proc_write_size = PAGE_SIZE, .proc_lseek = default_llseek, -- 2.53.0
