aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/xen-netfront.c
diff options
context:
space:
mode:
authorRoger Pau Monne <[email protected]>2022-04-06 15:38:04 +0000
committerJuergen Gross <[email protected]>2022-07-01 08:00:14 +0000
commit307c8de2b02344805ebead3440d8feed28f2f010 (patch)
tree528e53d9d27eea583793dd2a9c7e7057c3e8ebd7 /drivers/net/xen-netfront.c
parentxen/blkfront: fix leaking data in shared pages (diff)
downloadkernel-307c8de2b02344805ebead3440d8feed28f2f010.tar.gz
kernel-307c8de2b02344805ebead3440d8feed28f2f010.zip
xen/netfront: fix leaking data in shared pages
When allocating pages to be used for shared communication with the backend always zero them, this avoids leaking unintended data present on the pages. This is CVE-2022-33740, part of XSA-403. Signed-off-by: Roger Pau MonnĂ© <[email protected]> Reviewed-by: Jan Beulich <[email protected]> Reviewed-by: Juergen Gross <[email protected]> Signed-off-by: Juergen Gross <[email protected]>
Diffstat (limited to 'drivers/net/xen-netfront.c')
-rw-r--r--drivers/net/xen-netfront.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c
index 8c0b9546d5a2..e3165139629d 100644
--- a/drivers/net/xen-netfront.c
+++ b/drivers/net/xen-netfront.c
@@ -271,7 +271,8 @@ static struct sk_buff *xennet_alloc_one_rx_buffer(struct netfront_queue *queue)
if (unlikely(!skb))
return NULL;
- page = page_pool_dev_alloc_pages(queue->page_pool);
+ page = page_pool_alloc_pages(queue->page_pool,
+ GFP_ATOMIC | __GFP_NOWARN | __GFP_ZERO);
if (unlikely(!page)) {
kfree_skb(skb);
return NULL;