Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 302347 Details for
Bug 428696
nVidia MCP55 MCP55 Ethernet (rev a3) not functional on kernel 2.6.18-53.1.4
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
rhel5-forcedeth-fix.patch
rhel5-forcedeth-fix.patch (text/plain), 2.30 KB, created by
Andy Gospodarek
on 2008-04-14 14:55:37 UTC
(
hide
)
Description:
rhel5-forcedeth-fix.patch
Filename:
MIME Type:
Creator:
Andy Gospodarek
Created:
2008-04-14 14:55:37 UTC
Size:
2.30 KB
patch
obsolete
>commit eef3992f290163440110c41b15ba6b301ac03878 >Author: Andy Gospodarek <gospo@redhat.com> >Date: Mon Apr 14 10:42:46 2008 -0400 > > forcedeth hack to fix broken MSI on rhel5 > RHBZ 428696 > > This fix will free and request interrupts on forcedeth hardware using > MSI/MSI-X since enabling and disabling MSI interrupts doesn't work > correctly on rhel5/2.6.18. > > Changes were made in 2.6.19 to address these problems and we hope to > include them in a later update, but massive testing will be required to > accept a chance like this to any rhel update. > >diff --git a/drivers/net/forcedeth.c b/drivers/net/forcedeth.c >index eb28c62..1d1be3a 100644 >--- a/drivers/net/forcedeth.c >+++ b/drivers/net/forcedeth.c >@@ -949,36 +949,31 @@ static int using_multi_irqs(struct net_device *dev) > return 1; > } > >+static int nv_request_irq(struct net_device *dev, int intr_test); >+static void nv_free_irq(struct net_device *dev); >+ > static void nv_enable_irq(struct net_device *dev) > { > struct fe_priv *np = get_nvpriv(dev); > >- if (!using_multi_irqs(dev)) { >- if (np->msi_flags & NV_MSI_X_ENABLED) >- enable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector); >- else >- enable_irq(np->pci_dev->irq); >- } else { >- enable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_RX].vector); >- enable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_TX].vector); >- enable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_OTHER].vector); >- } >+ /* MSI doesn't work well on 2.6.18, request new irq if using >+ MSI or MSI-X */ >+ if (np->msi_flags && (NV_MSI_X_ENABLED | NV_MSI_ENABLED)) >+ nv_request_irq(dev, 0); >+ else >+ enable_irq(np->pci_dev->irq); > } > > static void nv_disable_irq(struct net_device *dev) > { > struct fe_priv *np = get_nvpriv(dev); > >- if (!using_multi_irqs(dev)) { >- if (np->msi_flags & NV_MSI_X_ENABLED) >- disable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_ALL].vector); >- else >- disable_irq(np->pci_dev->irq); >- } else { >- disable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_RX].vector); >- disable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_TX].vector); >- disable_irq(np->msi_x_entry[NV_MSI_X_VECTOR_OTHER].vector); >- } >+ /* MSI doesn't work well on 2.6.18, free irq if using MSI or >+ MSI-X */ >+ if (np->msi_flags && (NV_MSI_X_ENABLED | NV_MSI_ENABLED)) >+ nv_free_irq(dev); >+ else >+ disable_irq(np->pci_dev->irq); > } > > /* In MSIX mode, a write to irqmask behaves as XOR */
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 428696
:
291604
|
291745
|
291746
|
294922
|
296659
| 302347 |
311508
|
311976