[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <44D3508D.30703@intel.com>
Date: Fri, 04 Aug 2006 06:50:05 -0700
From: Auke Kok <auke-jan.h.kok@...el.com>
To: Jesper Juhl <jesper.juhl@...il.com>
CC: Andrew Morton <akpm@...l.org>, gregkh@...e.de,
linux-kernel@...r.kernel.org, stable@...nel.org,
jmforbes@...uxtx.org, zwane@....linux.org.uk, tytso@....edu,
rdunlap@...otime.net, davej@...hat.com, chuckw@...ntumlinux.com,
reviews@...cw.f00f.org, torvalds@...l.org, alan@...rguk.ukuu.org.uk
Subject: Re: [patch 00/23] -stable review
Jesper Juhl wrote:
> On 04/08/06, Andrew Morton <akpm@...l.org> wrote:
>> On Fri, 4 Aug 2006 11:04:36 +0200
>> "Jesper Juhl" <jesper.juhl@...il.com> wrote:
>>
>> > On 04/08/06, Greg KH <gregkh@...e.de> wrote:
>> > > This is the start of the stable review cycle for the 2.6.17.8
>> release.
>> > > There are 23 patches in this series, all will be posted as a
>> response to
>> > > this one. If anyone has any issues with these being applied,
>> please let
>> > > us know. If anyone is a maintainer of the proper subsystem, and
>> wants
>> > > to add a Signed-off-by: line to the patch, please respond with it.
>> > >
>> > > These patches are sent out with a number of different people on
>> the Cc:
>> > > line. If you wish to be a reviewer, please email
>> stable@...nel.org to
>> > > add your name to the list. If you want to be off the reviewer list,
>> > > also email us.
>> > >
>> > > Responses should be made by Sunday, August 6, 05:00:00 UTC. Anything
>> > > received after that time might be too late.
>> > >
>> > > I've also posted a roll-up patch with all changes in it if people
>> want
>> > > to test it out. It can be found at:
>> > >
>> > >
>> kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.17.8-rc1.gz
>> > >
>> >
>> > Any chance that the fixes in the (latest) e1000 driver version
>> > 7.1.9-k4 will get backported?
>>
>> The post-2.6.17 e1000 changes are massive.
>>
> I know, I tried backporting the new driver but gave up.
>
>
>> > I can't run 2.6.17.7 on at least one of my servers due to bugs in the
>> > driver that are fixed in the latest e1000 version.
>> > I looked through the -stable patches but didn't find anything that
>> > would fix my problem.
>> > I get messages along the lines of "kernel: Virtual device XXX asks to
>> > queue packet!" and the device then refuses to work.
>> > The last kernel where I know for a fact that it worked OK is 2.6.11,
>> > so that's what the server is currently running.
>> >
>> > Getting the fix for that problem backported to -stable would really
>> make my day.
>>
>>
>> Perhaps the e1000 developers can help us to identify the particular
>> fix for
>> this problem.
>>
> That's what I was hoping for...
I suspect that this will have fixed it, but this is a followup to a patch that
disables HW CRC stripping. perhaps commit eb0f805... might be involved as
well, allthough I doubt that.
---
diff-tree f235a2abb27b9396d2108dd2987fb8262cb508a3 (from d3d9e484b2ca502c87156b6
Author: Auke Kok <auke\-jan.h.kok@...el.com>
Date: Fri Jul 14 16:14:34 2006 -0700
e1000: remove CRC bytes from measured packet length
After removing the hardware CRC stripping which causes problems with
SOL and related issues, we need to compensate for this changed size.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@...el.com>
Signed-off-by: Auke Kok <auke-jan.h.kok@...el.com>
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index 1c6bcad..0074a3a 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -3673,6 +3673,9 @@ #endif
length = le16_to_cpu(rx_desc->length);
+ /* adjust length to remove Ethernet CRC */
+ length -= 4;
+
if (unlikely(!(status & E1000_RXD_STAT_EOP))) {
/* All receives must fit into a single buffer */
E1000_DBG("%s: Receive packet consumed multiple"
@@ -3877,8 +3880,9 @@ #endif
pci_dma_sync_single_for_device(pdev,
ps_page_dma->ps_page_dma[0],
PAGE_SIZE, PCI_DMA_FROMDEVICE);
+ /* remove the CRC */
+ l1 -= 4;
skb_put(skb, l1);
- length += l1;
goto copydone;
} /* if */
}
@@ -3896,6 +3900,10 @@ #endif
skb->data_len += length;
skb->truesize += length;
}
+
+ /* strip the ethernet crc, problem is we're using pages now so
+ * this whole operation can get a little cpu intensive */
+ pskb_trim(skb, skb->len - 4);
copydone:
e1000_rx_checksum(adapter, staterr,
---
hth,
Auke
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists