Commit 83d87a4d authored by wuchi's avatar wuchi Committed by Andrew Morton
Browse files

relay: use kvcalloc to alloc page array in relay_alloc_page_array

kvcalloc() is safer because it will check the integer overflows, and using
it will simple the logic of allocation size.

Link: https://lkml.kernel.org/r/20220909101025.82955-1-wuchi.zero@gmail.com


Signed-off-by: default avatarwuchi <wuchi.zero@gmail.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: Jens Axboe <axboe@kernel.dk>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 7ec354ba
Loading
Loading
Loading
Loading
+1 −4
Original line number Diff line number Diff line
@@ -60,10 +60,7 @@ static const struct vm_operations_struct relay_file_mmap_ops = {
 */
static struct page **relay_alloc_page_array(unsigned int n_pages)
{
	const size_t pa_size = n_pages * sizeof(struct page *);
	if (pa_size > PAGE_SIZE)
		return vzalloc(pa_size);
	return kzalloc(pa_size, GFP_KERNEL);
	return kvcalloc(n_pages, sizeof(struct page *), GFP_KERNEL);
}

/*