public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* RE: PROBLEM: 2.6.7 Linux Kernel Crash While Detecting PCI Devices
@ 2004-08-12 17:47 John Riggs
  2004-08-12 22:31 ` Greg KH
  0 siblings, 1 reply; 7+ messages in thread
From: John Riggs @ 2004-08-12 17:47 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-kernel, John Riggs

> Yes, that sounds like what is happening.  Can you build a modular
kernel
> and load the drivers you need one by one until the error happens?

After rebuilding the modular kernel I see that the crash happens before
any modules are loaded.

Thanks,
John

^ permalink raw reply	[flat|nested] 7+ messages in thread
* RE: PROBLEM: 2.6.7 Linux Kernel Crash While Detecting PCI Devices
@ 2004-08-13 16:57 John Riggs
  0 siblings, 0 replies; 7+ messages in thread
From: John Riggs @ 2004-08-13 16:57 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-kernel

> Ick.  I really don't know what's happening here.  You obviously have
> some pci drivers build into the kernel.  Which ones?

Here's my .config file. With everything I think is related to PCI, and
maybe a bit more.
Also, what about the output of lspci? I've included that in a previous
post, and the final device listed in that file showed some potential for
problem, in that the lspci program lists its capabilities in a
never-ending loop.

#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
# CONFIG_PCI_LEGACY_PROC is not set
# CONFIG_PCI_NAMES is not set
CONFIG_ISA=y
# CONFIG_EISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not set

#
# PCI Hotplug Support
#
# CONFIG_HOTPLUG_PCI is not set

#
# IDE chipset support/bugfixes
#
CONFIG_IDE_GENERIC=m
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_IDEPNP is not set
CONFIG_BLK_DEV_IDEPCI=y
# CONFIG_IDEPCI_SHARE_IRQ is not set
# CONFIG_BLK_DEV_OFFBOARD is not set
CONFIG_BLK_DEV_GENERIC=m
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not set
CONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not set
CONFIG_BLK_DEV_ADMA=y
CONFIG_BLK_DEV_AEC62XX=m
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_BLK_DEV_AMD74XX is not set
# CONFIG_BLK_DEV_ATIIXP is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_TRIFLEX is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5520 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_SC1200 is not set
CONFIG_BLK_DEV_PIIX=m
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_PDC202XX_OLD is not set
CONFIG_BLK_DEV_PDC202XX_NEW=m
# CONFIG_PDC202XX_FORCE is not set
# CONFIG_BLK_DEV_SVWKS is not set
CONFIG_BLK_DEV_SIIMAGE=m
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_VIA82CXXX is not set
# CONFIG_IDE_ARM is not set
# CONFIG_IDE_CHIPSETS is not set
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set

#
# Input I/O drivers
#
# CONFIG_GAMEPORT is not set
CONFIG_SOUND_GAMEPORT=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=m
# CONFIG_SERIO_SERPORT is not set
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PCIPS2 is not set

Thanks,
John

^ permalink raw reply	[flat|nested] 7+ messages in thread
* RE: PROBLEM: 2.6.7 Linux Kernel Crash While Detecting PCI Devices
@ 2004-08-10 18:14 John Riggs
  2004-08-11 21:22 ` Greg KH
  0 siblings, 1 reply; 7+ messages in thread
From: John Riggs @ 2004-08-10 18:14 UTC (permalink / raw)
  To: linux-kernel; +Cc: greg, John Riggs

The problem appears to be coming from the following series of calls:

returns EEXIST
create_dir
sysfs_create_dir
create_dir
kobject_add
class_device_add
class_device_register  
pci_alloc_child_bus

This causes pci_bus* child->class_dev.kobj.dentry to be NULL, which is
passed into class_device_create_file eventually becoming a NULL POINTER
in the function sysfs_add_file. (The NULL variable in sysfs_add_file is
now called dir.)

I don't have much of an understanding of the kernel, but it appears to
me that a PCI device is getting created twice. Does anybody have any
pointers as to what might be going on, or can point me in the right
direction to look?

Thanks,
John

^ permalink raw reply	[flat|nested] 7+ messages in thread
* PROBLEM: 2.6.7 Linux Kernel Crash While Detecting PCI Devices
@ 2004-08-06 18:22 John Riggs
  2004-08-17 20:22 ` Jonathan Sambrook
  0 siblings, 1 reply; 7+ messages in thread
From: John Riggs @ 2004-08-06 18:22 UTC (permalink / raw)
  To: linux-kernel; +Cc: greg

Summary: 2.6.7 Linux Kernel Crash While Detecting PCI Devices
  Please CC me on any replies.

  Hi, I am responsible for maintaining a pre-boot Linux environment, for
which we use a 2.6.7 linux kernel, booted with the freeloader boot
loader. Our environment works well on most systems, but on this
particular model of laptop the kernel crashes before I get a shell
prompt. From the stack trace, it appears to be crashing during the PCI
device detection. The root filesystem is loaded into a ramdisk. The
crash doesn't always reproduce, and I'm not sure what changes that it
does or does not reproduce. But I see the crash on more than 50% of the
reboots.

Oops output from ksymoops:
Unable to handle kernel NULL pointer dereference at virtual address
00000008
c015f846
*pde = 00000000
Oops: 0000 [#1]
CPU:    0
EIP:    0060:[<c015f846>]    Not tainted
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010246   (2.6.7)
eax: 0000000f   ebx: df7ab1b8   ecx: c0270970   edx: 00007782
esi: df7ab178   edi: 00000000   ebp: c0276554   esp: df775ef8
ds: 007b   es: 007b   ss: 0068
Stack: c024ade6 df7ab1b8 df7ab178 df7ab378 df602c00 c019045f 00000000
c0276554
       c01733b5 df7ab1f0 c0276554 df7ab1f0 df7ab238 c024e1d6 00000000
00000009
       df602c00 df7ab378 00000009 00000001 c01734f4 df7ab378 df602c00
00000009
Call Trace:
 [<c019045f>]  [<c01733b5>]  [<c01734f4>]  [<c0173b6c>]  [<c0173cb9>]
[<c023b34
Code: 8b 47 08 5e 8d 48 68 ff 48 68 0f 88 64 01 00 00 8b 5d 00 53


>>EIP; c015f846 <sysfs_add_file+16/a0>   <=====

>>ebx; df7ab1b8 <pg0+1f4e51b8/3fd38000>
>>ecx; c0270970 <console_sem+0/10>
>>esi; df7ab178 <pg0+1f4e5178/3fd38000>
>>ebp; c0276554 <class_device_attr_cpuaffinity+0/14>
>>esp; df775ef8 <pg0+1f4afef8/3fd38000>

Trace; c019045f <class_device_create_file+1f/30>
Trace; c01733b5 <pci_alloc_child_bus+75/c0>
Trace; c01734f4 <pci_scan_bridge+b4/200>
Trace; c0173b6c <pci_scan_child_bus+8c/a0>
Trace; c0173cb9 <pci_scan_bus_parented+119/140>

Code;  c015f846 <sysfs_add_file+16/a0>
00000000 <_EIP>:
Code;  c015f846 <sysfs_add_file+16/a0>   <=====
   0:   8b 47 08                  mov    0x8(%edi),%eax   <=====
Code;  c015f849 <sysfs_add_file+19/a0>
   3:   5e                        pop    %esi
Code;  c015f84a <sysfs_add_file+1a/a0>
   4:   8d 48 68                  lea    0x68(%eax),%ecx
Code;  c015f84d <sysfs_add_file+1d/a0>
   7:   ff 48 68                  decl   0x68(%eax)
Code;  c015f850 <sysfs_add_file+20/a0>
   a:   0f 88 64 01 00 00         js     174 <_EIP+0x174>
Code;  c015f856 <sysfs_add_file+26/a0>
  10:   8b 5d 00                  mov    0x0(%ebp),%ebx
Code;  c015f859 <sysfs_add_file+29/a0>
  13:   53                        push   %ebx

 <0>Kernel panic: Attempted to kill init!



Output from lspci -vvv: (Note: lspci seemed to be stuck in an infinite
loop, printing the last two lines over and over)
00:00.0 Class f000: 0001:0000 (rev c3) (prog-if e2)
	Subsystem: 69d5:f000
	Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV+ VGASnoop-
ParErr+ Stepping+ SERR+ FastB2B-
	Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort-
<TAbort+ <MAbort+ >SERR+ <PERR+
	Latency: 105 (60000ns max), cache line size d5
	Interrupt: pin (c) routed to IRQ 0
	BIST is running
	Region 0: I/O ports at <ignored>
	Region 1: Memory at <ignored> (64-bit, non-prefetchable)
[disabled]
	Region 3: I/O ports at <ignored>
	Region 4: Memory at <ignored> (64-bit, prefetchable) [disabled]
	Expansion ROM at f0006800 [disabled] [size=2K]

00:0d.0 Class c024: 0068:24cf (rev 60) (prog-if cf)
	Subsystem: 1c24:44c7
	Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop-
ParErr+ Stepping+ SERR+ FastB2B+
	Status: Cap+ 66Mhz- UDF+ FastB2B+ ParErr- DEVSEL=fast >TAbort+
<TAbort- <MAbort+ >SERR+ <PERR-
	Interrupt: pin ^[,C ^[(Brouted to IRQ 0
	Region 0: Memory at <ignored> (32-bit, non-prefetchable)
[disabled]
	Region 1: Memory at <ignored> (low-1M, prefetchable) [disabled]
	Region 2: Memory at <ignored> (low-1M, non-prefetchable)
[disabled]
	Region 3: I/O ports at <ignored> [disabled]
	Region 4: I/O ports at <ignored> [disabled]
	Region 5: Memory at <ignored> (type 3, non-prefetchable)
[disabled]
	Expansion ROM at <unassigned> [disabled] [size=2K]

00:0e.0 Class 27bc: 6ce9:ffff (prog-if 8d)
	Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV+ VGASnoop+
ParErr+ Stepping+ SERR+ FastB2B-
	Status: Cap+ 66Mhz+ UDF+ FastB2B- ParErr- DEVSEL=?? >TAbort-
<TAbort- <MAbort+ >SERR- <PERR-
	Latency: 0
	Region 0: I/O ports at <ignored>
	Region 1: Memory at <ignored> (32-bit, non-prefetchable)
	Region 2: Memory at <ignored> (32-bit, non-prefetchable)
	Region 3: Memory at <ignored> (32-bit, non-prefetchable)
	Region 4: Memory at <ignored> (32-bit, non-prefetchable)
	Region 5: I/O ports at <ignored>
	Expansion ROM at 0001f800 [disabled] [size=2K]

00:0f.0 Class 26b4: c483:e910 (rev 90) (prog-if 8d)
	Subsystem: 748d:0026
	Control: I/O- Mem- BusMaster+ SpecCycle+ MemWINV+ VGASnoop+
ParErr- Stepping- SERR+ FastB2B+
	Status: Cap+ 66Mhz+ UDF+ FastB2B+ ParErr+ DEVSEL=?? >TAbort+
<TAbort+ <MAbort+ >SERR+ <PERR+
	Latency: 0 (34750ns min, 31000ns max)
	Interrupt: pin P routed to IRQ 0
	Region 0: I/O ports at <ignored> [disabled]
	Region 1: Memory at <ignored> (32-bit, non-prefetchable)
[disabled]
	Region 2: I/O ports at <ignored> [disabled]
	Region 3: Memory at <ignored> (64-bit, non-prefetchable)
[disabled]
	Region 5: Memory at <ignored> (32-bit, prefetchable) [disabled]
	Expansion ROM at e000b800 [disabled] [size=2K]
	Capabilities: [fc] #c0 [c8a1]
	Capabilities: [c0] #e8 [f9d4]
	Capabilities: [d8] #85 [2274]
	Capabilities: [c0] #e8 [f9d4]
	Capabilities: [d8] #85 [2274]
	Capabilities: [c0] #e8 [f9d4]
	Capabilities: [d8] #85 [2274]
	Capabilities: [c0] #e8 [f9d4]
	Capabilities: [d8] #85 [2274]
	Capabilities: [c0] #e8 [f9d4]
	Capabilities: [d8] #85 [2274]
	Capabilities: [c0] #e8 [f9d4]
	Capabilities: [d8] #85 [2274]
	C

Listing of /proc/cpuinfo:
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 13
model name	: Intel(R) Pentium(R) M processor 1.73GHz
stepping	: 6
cpu MHz		: 1734.122
cache size	: 64 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 2
wp		: yes
flags		: fpu vme de pse tsc msr mce cx8 apic sep mtrr pge mca
cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe tm2 est
bogomips	: 3416.06


Listing of /proc/ioports and /proc/iomem:
0000-001f : dma1
0020-0021 : pic1
0040-005f : timer
0060-006f : keyboard
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
03c0-03df : vga+
03f6-03f6 : ide0
c000-efff : PCI Bus #4d

00000000-0009fbff : System RAM
0009fc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000d0000-000d0fff : Adapter ROM
000d1000-000d2fff : Adapter ROM
000f0000-000fffff : System ROM
00100000-1f7cffff : System RAM
  00100000-0023de35 : Kernel code
  0023de36-0028a3ff : Kernel data
1f7d0000-1f7efbff : reserved
1f7efc00-1f7fafff : ACPI Non-volatile Storage
1f7fb000-1f7fffff : reserved
40800000-8b6fffff : PCI Bus #28
e0000000-efffffff : reserved
fec00000-fec01fff : reserved
fed20000-fed9afff : reserved
feda0000-fedbffff : reserved
ffb00000-ffbfffff : reserved
fff00000-ffffffff : reserved

I don't have /proc/scsi/scsi on my system, nor /proc/modules

Thank you,
John

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2004-08-17 20:23 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-08-12 17:47 PROBLEM: 2.6.7 Linux Kernel Crash While Detecting PCI Devices John Riggs
2004-08-12 22:31 ` Greg KH
  -- strict thread matches above, loose matches on Subject: below --
2004-08-13 16:57 John Riggs
2004-08-10 18:14 John Riggs
2004-08-11 21:22 ` Greg KH
2004-08-06 18:22 John Riggs
2004-08-17 20:22 ` Jonathan Sambrook

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox