Unverified Commit 02d56ff3 authored by openeuler-ci-bot's avatar openeuler-ci-bot Committed by Gitee
Browse files
parents d8b474e6 d3e9940d
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -879,7 +879,12 @@ struct page **io_pin_pages(unsigned long ubuf, unsigned long len, int *npages)
	struct page **pages = NULL;
	int pret, ret = -ENOMEM;

	end = (ubuf + len + PAGE_SIZE - 1) >> PAGE_SHIFT;
	if (check_add_overflow(ubuf, len, &end))
		return ERR_PTR(-EOVERFLOW);
	if (check_add_overflow(end, PAGE_SIZE - 1, &end))
		return ERR_PTR(-EOVERFLOW);

	end = end >> PAGE_SHIFT;
	start = ubuf >> PAGE_SHIFT;
	nr_pages = end - start;