[PATCH] kernel: relay: use __GFP_ZERO in relay_alloc_buf

Elijah Wright posted 1 patch 4 months ago
kernel/relay.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
[PATCH] kernel: relay: use __GFP_ZERO in relay_alloc_buf
Posted by Elijah Wright 4 months ago
passing the __GFP_ZERO flag to alloc_page should result in less overhead than using memset()

Signed-off-by: Elijah Wright <git@elijahs.space>
---
 kernel/relay.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/kernel/relay.c b/kernel/relay.c
index c0c93a04d4ce..3ee5b038d0d9 100644
--- a/kernel/relay.c
+++ b/kernel/relay.c
@@ -118,7 +118,7 @@ static void *relay_alloc_buf(struct rchan_buf *buf, size_t *size)
 		return NULL;
 
 	for (i = 0; i < n_pages; i++) {
-		buf->page_array[i] = alloc_page(GFP_KERNEL);
+		buf->page_array[i] = alloc_page(GFP_KERNEL | __GFP_ZERO);
 		if (unlikely(!buf->page_array[i]))
 			goto depopulate;
 		set_page_private(buf->page_array[i], (unsigned long)buf);
@@ -127,7 +127,6 @@ static void *relay_alloc_buf(struct rchan_buf *buf, size_t *size)
 	if (!mem)
 		goto depopulate;
 
-	memset(mem, 0, *size);
 	buf->page_count = n_pages;
 	return mem;
 
-- 
2.43.0