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

Commit 53cd9ae8 authored by Jens Axboe's avatar Jens Axboe
Browse files

[PATCH] splice: fix shadow[] filling logic



Clear the entire range, and don't increment pidx or we keep filling
the same position again and again.

Thanks to KAMEZAWA Hiroyuki.

Signed-off-by: default avatarJens Axboe <axboe@suse.de>
parent b043b673
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -237,9 +237,9 @@ static int __generic_file_splice_read(struct file *in, struct inode *pipe,
	 * fill shadow[] with pages at the right locations, so we only
	 * have to fill holes
	 */
	memset(shadow, 0, i * sizeof(struct page *));
	for (j = 0, pidx = index; j < i; pidx++, j++)
		shadow[pages[j]->index - pidx] = pages[j];
	memset(shadow, 0, nr_pages * sizeof(struct page *));
	for (j = 0; j < i; j++)
		shadow[pages[j]->index - index] = pages[j];

	/*
	 * now fill in the holes