Drivers/Net/MarvellYukon: Free link if its DMA buffer can't be allocated
msk_rxeof() allocates a link object which contains a buffer. If the
buffer can't be allocated, make sure to free the link object.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Alan Ott <alan@softiron.co.uk>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
diff --git a/Drivers/Net/MarvellYukonDxe/if_msk.c b/Drivers/Net/MarvellYukonDxe/if_msk.c
index 056bf03..ecd716a 100644
--- a/Drivers/Net/MarvellYukonDxe/if_msk.c
+++ b/Drivers/Net/MarvellYukonDxe/if_msk.c
@@ -1943,6 +1943,7 @@
InsertTailList (&mSoftc->ReceiveQueueHead, &m_link->Link);
} else {
DEBUG ((EFI_D_NET, "Marvell Yukon: failed to allocate DMA buffer. Dropping Frame\n"));
+ gBS->FreePool (m_link);
}
} else {
DEBUG ((EFI_D_NET, "Marvell Yukon: failed to allocate receive buffer link. Dropping Frame\n"));