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.
Unified · Split
| @@ -271,7 +271,8 @@ static struct sk_buff *xennet_alloc_one_rx_buffer(struct netfront_queue *queue) · 270 unmodified lines | ||
| 271 | 271 | if (unlikely(!skb)) |
| 272 | 272 | return NULL; |
| 273 | 273 | |
| 274 | − page = page_pool_dev_alloc_pages(queue->page_pool); | |
| 274 | + page = page_pool_alloc_pages(queue->page_pool, | |
| 275 | + GFP_ATOMIC | __GFP_NOWARN | __GFP_ZERO); | |
| 275 | 276 | if (unlikely(!page)) { |
| 276 | 277 | kfree_skb(skb); |
| 277 | 278 | return NULL; |