net: bcmgenet: check harder for out of memory conditions
authorFlorian Fainelli <f.fainelli@gmail.com>
Mon, 8 Sep 2014 18:37:52 +0000 (11:37 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 8 Sep 2014 23:02:49 +0000 (16:02 -0700)
commitb629be5c8399d7c423b92135eb43a86c924d1cbc
tree28483cec84c56b551a51d19a25d5479ea948aae5
parentfe24ba082b8483c81f546d24e40a55624295b85d
net: bcmgenet: check harder for out of memory conditions

There is a potential case where we might be failing to refill a
control block, leaving it with both a NULL skb pointer *and* a NULL
dma_unmap_addr.

The way we process incoming packets, by first calling
dma_unmap_single(), and then only checking for a potential NULL skb can
lead to situations where do pass a NULL dma_unmap_addr() to
dma_unmap_single(), resulting in an oops.

Fix this my moving the NULL skb check earlier, since no backing skb
also means no corresponding DMA mapping for this packet.

Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/genet/bcmgenet.c