Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 142884 Details for
Bug 209235
e1000e doesn't strip crc properly on some chips
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Temporary fix for e1000e crc problem.
2.6.24-e1000e-crc.patch (text/plain), 1.56 KB, created by
Johan Ymerson
on 2008-02-07 13:20:32 UTC
(
hide
)
Description:
Temporary fix for e1000e crc problem.
Filename:
MIME Type:
Creator:
Johan Ymerson
Created:
2008-02-07 13:20:32 UTC
Size:
1.56 KB
patch
obsolete
>diff --git a/drivers/net/e1000e/netdev.c b/drivers/net/e1000e/netdev.c >index f58f017..02fd017 100644 >--- a/drivers/net/e1000e/netdev.c >+++ b/drivers/net/e1000e/netdev.c >@@ -406,6 +406,10 @@ static bool e1000_clean_rx_irq(struct e1000_adapter *adapter, > goto next_desc; > } > >+ /* adjust length to remove Ethernet CRC */ >+ length -= 4; >+ >+ /* probably a little skewed due to removing CRC */ > total_rx_bytes += length; > total_rx_packets++; > >@@ -699,7 +703,8 @@ static bool e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, > kunmap_atomic(vaddr, KM_SKB_DATA_SOFTIRQ); > pci_dma_sync_single_for_device(pdev, ps_page->dma, > PAGE_SIZE, PCI_DMA_FROMDEVICE); >- >+ /* remove the CRC */ >+ l1 -= 4; > skb_put(skb, l1); > goto copydone; > } /* if */ >@@ -721,6 +726,10 @@ static bool e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, > 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: > total_rx_bytes += skb->len; > total_rx_packets++; >@@ -1753,11 +1762,9 @@ static void e1000_setup_rctl(struct e1000_adapter *adapter) > > ew32(RFCTL, rfctl); > >- /* Enable Packet split descriptors */ >- rctl |= E1000_RCTL_DTYP_PS; >- >- /* Enable hardware CRC frame stripping */ >- rctl |= E1000_RCTL_SECRC; >+ /* disable the stripping of CRC because it breaks >+ * BMC firmware connected over SMBUS */ >+ rctl |= E1000_RCTL_DTYP_PS /* | E1000_RCTL_SECRC */; > > psrctl |= adapter->rx_ps_bsize0 >> > E1000_PSRCTL_BSIZE0_SHIFT;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 209235
: 142884