Commit d4b111fd authored by Catherine Sullivan's avatar Catherine Sullivan Committed by David S. Miller
Browse files

gve: Properly handle errors in gve_assign_qpl



Ignored errors would result in crash.

Fixes: ede3fcf5 ("gve: Add support for raw addressing to the rx path")
Signed-off-by: default avatarCatherine Sullivan <csully@google.com>
Signed-off-by: default avatarJeroen de Borst <jeroendb@google.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 922aa9bc
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -104,8 +104,14 @@ static int gve_prefill_rx_pages(struct gve_rx_ring *rx)
	if (!rx->data.page_info)
		return -ENOMEM;

	if (!rx->data.raw_addressing)
	if (!rx->data.raw_addressing) {
		rx->data.qpl = gve_assign_rx_qpl(priv);
		if (!rx->data.qpl) {
			kvfree(rx->data.page_info);
			rx->data.page_info = NULL;
			return -ENOMEM;
		}
	}
	for (i = 0; i < slots; i++) {
		if (!rx->data.raw_addressing) {
			struct page *page = rx->data.qpl->pages[i];