From f826d57cef3a30a7a16c09efb03623c844c94e8a Mon Sep 17 00:00:00 2001 From: Neil Horman Date: Tue, 2 Jun 2009 01:29:58 -0700 Subject: [PATCH] --- yaml --- r: 145471 b: refs/heads/master c: ea30e11970a96cfe5e32c03a29332554573b4a10 h: refs/heads/master i: 145469: de7ab7b884bc75c6fd9ee4beb64b776120369d0b 145467: cae8db1e00f2abd48657e4aee01bfff47518b795 145463: e406ef50fc0706c98bc815213289756e0dd309d9 145455: 07363b3dd5b4546aaf0249e8a35ffcfca7d1f816 145439: 9abfd036cbb6a33c668c6da018f41e0adb0da13c 145407: 166de486808a60d90701b0818a1c9c31faaad02b v: v3 --- [refs] | 2 +- trunk/drivers/net/e1000/e1000_main.c | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 8b51222632ae..38322ac3cba9 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5a9a8e32ebe269c71d8d3e78f9435fe7729f38e9 +refs/heads/master: ea30e11970a96cfe5e32c03a29332554573b4a10 diff --git a/trunk/drivers/net/e1000/e1000_main.c b/trunk/drivers/net/e1000/e1000_main.c index b1419e21b46b..fffb006b7d95 100644 --- a/trunk/drivers/net/e1000/e1000_main.c +++ b/trunk/drivers/net/e1000/e1000_main.c @@ -4027,8 +4027,9 @@ static bool e1000_clean_rx_irq(struct e1000_adapter *adapter, PCI_DMA_FROMDEVICE); length = le16_to_cpu(rx_desc->length); - - if (unlikely(!(status & E1000_RXD_STAT_EOP))) { + /* !EOP means multiple descriptors were used to store a single + * packet, also make sure the frame isn't just CRC only */ + if (unlikely(!(status & E1000_RXD_STAT_EOP) || (length <= 4))) { /* All receives must fit into a single buffer */ E1000_DBG("%s: Receive packet consumed multiple" " buffers\n", netdev->name);