lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sun, 14 Oct 2007 12:55:18 -0700 From: "Yinghai Lu" <yhlu.kernel@...il.com> To: "Manfred Spraul" <manfred@...orfullife.com> Cc: "Jeff Garzik" <jgarzik@...ox.com>, "Ayaz Abdulla" <aabdulla@...dia.com>, nedev <netdev@...r.kernel.org>, "Linux Kernel Mailing List" <linux-kernel@...r.kernel.org>, "David Miller" <davem@...emloft.net>, "Andrew Morton" <akpm@...ux-foundation.org> Subject: Re: MSI interrupts and disable_irq On 10/14/07, Manfred Spraul <manfred@...orfullife.com> wrote: > Yinghai Lu wrote: > > On 10/13/07, Manfred Spraul <manfred@...orfullife.com> wrote: > > > >> Someone around with a MSI capable board? The forcedeth driver does > >> dev->irq = pci_dev->irq > >> in nv_probe(), especially before pci_enable_msi(). > >> Does pci_enable_msi() change pci_dev->irq? Then we would disable the > >> wrong interrupt.... > >> > > > > the request_irq==>setup_irq will make dev->irq = pci_dev->irq. > > > > > Where is that? in nv_request_irq if ((ret = pci_enable_msi(np->pci_dev)) == 0) { np->msi_flags |= NV_MSI_ENABLED; if (request_irq(np->pci_dev->irq, handler, IRQF_SHARED, dev->name, dev) != 0) { in request_irq int request_irq(unsigned int irq, irq_handler_t handler, unsigned long irqflags, const char *devname, void *dev_id) ... action->dev_id = dev_id; ... retval = setup_irq(irq, action); in setup_irq int setup_irq(unsigned int irq, struct irqaction *new) .... new->irq = irq; it seems I missed that here new is irqaction instead of net_dev. YH - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists