mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Bjorn Helgaas <bjorn.helgaas@hp.com>
To: Guillaume Thouvenin <guillaume.thouvenin@bull.net>
Cc: Andrew Morton <akpm@osdl.org>,
	linux.nics@intel.com, linux-kernel@vger.kernel.org
Subject: Re: e1000 driver failed to call pci_enable_device
Date: Fri, 27 Aug 2004 09:42:57 -0600	[thread overview]
Message-ID: <200408270942.57621.bjorn.helgaas@hp.com> (raw)
In-Reply-To: <20040827114408.GA6490@frec.bull.fr>

On Friday 27 August 2004 5:44 am, you wrote:
>  I tried to boot the linux-2.6.9-rc1-mm1 kernel and it generates an oops
> because the e1000 driver failed to call pci_enable_device(). The kernel
> boots normally with "pci=routeirq" argument sets. I copy the output of
> "lspci" and also the oops message generated during the boot.
> ...
> ----[the oops message]----
> Bringing up interface eth0:  Unable to handle kernel paging request at virtual
> ddress c0500eb0
>  printing eip:
> *pde = 00582027
> Oops: 0000 [#1]
> PREEMPT SMP DEBUG_PAGEALLOC
> Modules linked in: e1000
> CPU:    0
> EIP:    0060:[<c0500eb0>]    Not tainted VLI
> EFLAGS: 00010282   (2.6.9-rc1-mm1)
> EIP is at assign_irq_vector+0x0/0x87
> eax: 00000004   ebx: 00000034   ecx: 00000080   edx: c0545a70
> esi: 00000004   edi: 00000002   ebp: 00000001   esp: f7f0dda4
> ds: 007b   es: 007b   ss: 0068
> Process modprobe (pid: 1760, threadinfo=f7f0c000 task=f7faeb70)
> Stack: c011751e 00000034 00000002 00000004 00000008 0000000c 00000097 f7f0c000
>        00000286 c2223480 00000001 0001a900 03000000 00000004 00000034 00000002
>        00000010 c0114d43 00000002 00000004 00000034 00000001 00000001 00000001
> Call Trace:
>  [<c011751e>] io_apic_set_pci_routing+0x7f/0x222
> ...

Thanks very much for your testing and detailed problem report.  This
problem actually isn't in e1000.  Can you try the attached patch,
please?  I thought I'd seen this patch before, but it doesn't seem to
be in -mm yet.


Make assign_irq_vector() non-__init always (it's called from
io_apic_set_pci_routing(), which is used in the pci_enable_device()
path).

Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>

===== arch/i386/kernel/io_apic.c 1.109 vs edited =====
--- 1.109/arch/i386/kernel/io_apic.c	2004-08-24 03:08:37 -06:00
+++ edited/arch/i386/kernel/io_apic.c	2004-08-27 09:30:37 -06:00
@@ -1120,11 +1120,7 @@
 /* irq_vectors is indexed by the sum of all RTEs in all I/O APICs. */
 u8 irq_vector[NR_IRQ_VECTORS] = { FIRST_DEVICE_VECTOR , 0 };
 
-#ifdef CONFIG_PCI_MSI
 int assign_irq_vector(int irq)
-#else
-int __init assign_irq_vector(int irq)
-#endif
 {
 	static int current_vector = FIRST_DEVICE_VECTOR, offset = 0;
 



       reply	other threads:[~2004-08-27 15:49 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20040827114408.GA6490@frec.bull.fr>
2004-08-27 15:42 ` Bjorn Helgaas [this message]
2004-08-30  7:55   ` Guillaume Thouvenin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200408270942.57621.bjorn.helgaas@hp.com \
    --to=bjorn.helgaas@hp.com \
    --cc=akpm@osdl.org \
    --cc=guillaume.thouvenin@bull.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux.nics@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®