Re: [patch 00/23] -stable review

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jesper Juhl wrote:
On 04/08/06, Andrew Morton <[email protected]> wrote:
On Fri, 4 Aug 2006 11:04:36 +0200
"Jesper Juhl" <[email protected]> wrote:

> On 04/08/06, Greg KH <[email protected]> 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 [email protected] 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\[email protected]>
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 <[email protected]>
    Signed-off-by: Auke Kok <[email protected]>

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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux