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  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m1y7mzhw7b.fsf@ebiederm.dsl.xmission.com>
Date:	Thu, 15 Feb 2007 15:50:32 -0700
From:	ebiederm@...ssion.com (Eric W. Biederman)
To:	Len Brown <lenb@...nel.org>
Cc:	john.ronciak@...el.com, jesse.brandeburg@...el.com,
	jeffrey.t.kirsher@...el.com, auke-jan.h.kok@...el.com,
	"lkml - Kernel Mailing List" <linux-kernel@...r.kernel.org>
Subject: Re: e1000_intr in request_irq faults in 2.6.20-git

Len Brown <lenb@...nel.org> writes:

> e1000 faults in 2.6.20-git, while 2.6.20 worked fine.
>
> System is a D875PBZ with LOM.
>
> clues?

I'm guessing this is an old bug found by the following bit of
debug coded added into since v2.6.20

+#ifdef CONFIG_DEBUG_SHIRQ
+       if (irqflags & IRQF_SHARED) {
+               /*
+                * It's a shared IRQ -- the driver ought to be prepared for it
+                * to happen immediately, so let's make sure....
+                * We do this before actually registering it, to make sure that
+                * a 'real' IRQ doesn't run in parallel with our fake
+                */
+               if (irqflags & IRQF_DISABLED) {
+                       unsigned long flags;
+
+                       local_irq_save(flags);
+                       handler(irq, dev_id);
+                       local_irq_restore(flags);
+               } else
+                       handler(irq, dev_id);
+       }
+#endif

I don't have a clue why the e1000 wasn't ready though.

Eric


>
> Bringing up loopback interface:  [  OK  ]
> Bringing up interface eth0: BUG: unable to handle kernel NULL pointer
> dereference at virtual address 00000000
>  printing eip:
> *pde = 3747c001
> Oops: 0000 [#1]
> SMP
> Modules linked in: dm_mod video thermal sbs i2c_ec fan button dock battery
> asus_acpi ac lp intel_agp agpgart ehci_hcd parport_serial parpt
> CPU:    0
> EIP:    0060:[<00000000>]    Not tainted VLI
> EFLAGS: 00010246   (2.6.20-g724339d7 #32)
> EIP is at _stext+0x3fefed10/0x14
> eax: c21cd3a0   ebx: f8840000   ecx: 00000000   edx: c22d2e44
> esi: c21cd3a0   edi: 00000000   ebp: c21cd564   esp: f755de6c
> ds: 007b   es: 007b   fs: 00d8  gs: 0033  ss: 0068
> Process ip (pid: 2975, ti=f755d000 task=f75590b0 task.ti=f755d000)
> Stack: c02a2077 fffffff4 f7987404 00000000 c02a1fc3 c0140cb5 00000010 012321b4
>        c21cd3a0 c21cd000 c21cd000 00000000 c02a1a71 c21cd000 c21cd000 c21cd3a0
>        00000000 c21cd3a0 00000000 c02a4916 c21cd000 00001003 00001002 c03b3751
> Call Trace:
>  [<c02a2077>] e1000_intr+0xb4/0x107
>  [<c02a1fc3>] e1000_intr+0x0/0x107
>  [<c0140cb5>] request_irq+0xa5/0xcc
>  [<c02a1a71>] e1000_request_irq+0xad/0xe6
>  [<c02a4916>] e1000_open+0x43/0xbd
>  [<c03b3751>] dev_open+0x2b/0x62
>  [<c03b224d>] dev_change_flags+0x47/0xe4
>  [<c03eb20e>] devinet_ioctl+0x250/0x56d
>  [<c03b3348>] dev_ifsioc+0x113/0x38d
>  [<c021f4ee>] copy_to_user+0x2d/0x43
>  [<c03a9a28>] sock_ioctl+0x19f/0x1be
>  [<c03a9889>] sock_ioctl+0x0/0x1be
>  [<c0168767>] do_ioctl+0x1f/0x62
>  [<c01689ee>] vfs_ioctl+0x244/0x256
>  [<c0168a33>] sys_ioctl+0x33/0x4c
>  [<c0103d88>] sysenter_past_esp+0x5d/0x81
>  =======================
> Code:  Bad EIP value.
> EIP: [<00000000>] _stext+0x3fefed10/0x14 SS:ESP 0068:f755de6c
> /etc/sysconfig/network-scripts/ifup-eth: line 272: 2975 Segmentation fault ip
> link set dev ${REALDEVICE} up
> Failed to bring up eth0.
> [FAILED]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ