* pnpbios oops on boot w/ 2.5.47
@ 2002-11-16 22:00 Justin A
2002-11-16 22:08 ` Andrew Morton
0 siblings, 1 reply; 10+ messages in thread
From: Justin A @ 2002-11-16 22:00 UTC (permalink / raw)
To: linux-kernel; +Cc: Alan Cox, Andrew Morton
[-- Attachment #1: Type: text/plain, Size: 405 bytes --]
Hi :)
I tried to "port" kmsgdump to 2.5.47 and for some reason, it worked.
Attached is the full dmesg
Alan: I ran dmidecode under 2.4.19 which said simply "PNP BIOS present"
This is a thinkpad 760e, really old..I don't even think I need pnpbios support
for anything. 2.5.47/2.5.47-ac5 boot with pnpbios turned off, so I think you
just need to add this to your blacklist?
--
-Justin
[-- Attachment #2: messages.txt --]
[-- Type: text/plain, Size: 5057 bytes --]
<4>Linux version 2.5.47 (justin@s.bouncybouncy.net) (gcc version 2.95.4 20011002 (Debian prerelease)) #8 Sat Nov 16 16:33:57 EST 2002
<4>Video mode to be used for restore is f00
<6>BIOS-provided physical RAM map:
<4> BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
<4> BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
<4> BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
<4> BIOS-e820: 0000000000100000 - 0000000004800000 (usable)
<4> BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved)
<5>72MB LOWMEM available.
<4>On node 0 totalpages: 18432
<4> DMA zone: 4096 pages, LIFO batch:1
<4> Normal zone: 14336 pages, LIFO batch:3
<4> HighMem zone: 0 pages, LIFO batch:1
<4>Building zonelist for node : 0
<4>Kernel command line: BOOT_IMAGE=test ro root=302 resume=/dev/hda1
<6>Initializing CPU#0
<4>Detected 119.769 MHz processor.
<4>Console: colour VGA+ 80x25
<4>Calibrating delay loop... 235.52 BogoMIPS
<6>Memory: 69928k/73728k available (1155k kernel code, 3324k reserved, 1053k data, 80k init, 0k highmem)
<6>Security Scaffold v1.0.0 initialized
<6>Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
<4>Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
<4>Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
<6>-> /dev
<6>-> /dev/console
<6>-> /root
<7>CPU: Before vendor init, caps: 000001bf 00000000 00000000, vendor = 0
<5>Intel Pentium with F0 0F bug - workaround enabled.
<7>CPU: After vendor init, caps: 000001bf 00000000 00000000 00000000
<7>CPU: After generic, caps: 000001bf 00000000 00000000 00000000
<7>CPU: Common caps: 000001bf 00000000 00000000 00000000
<4>CPU: Intel Pentium 75 - 200 stepping 0c
<6>Checking 'hlt' instruction... OK.
<4>POSIX conformance testing by UNIFIX
<6>Linux NET4.0 for Linux 2.4
<6>Based upon Swansea University Computer Society NET3.039
<4>Initializing RT netlink socket
<6>Linux Plug and Play Support v0.9 (c) Adam Belay
<6>PCI: PCI BIOS revision 2.10 entry at 0xfdaa0, last bus=6
<6>PCI: Using configuration type 1
<7>Registering system device cpu0
<7>adding 'CPU 0' to cpu class interfaces
<4>BIO: pool of 256 setup, 14Kb (56 bytes/bio)
<4>biovec pool[0]: 1 bvecs: 134 entries (12 bytes)
<4>biovec pool[1]: 4 bvecs: 134 entries (48 bytes)
<4>biovec pool[2]: 16 bvecs: 134 entries (192 bytes)
<4>biovec pool[3]: 64 bvecs: 67 entries (768 bytes)
<4>biovec pool[4]: 128 bvecs: 33 entries (1536 bytes)
<4>biovec pool[5]: 256 bvecs: 16 entries (3072 bytes)
<4>block request queues:
<4> 128 requests per read queue
<4> 128 requests per write queue
<4> 8 requests per batch
<4> enter congestion at 31
<4> exit congestion at 33
<6>PnPBIOS: Found PnP BIOS installation structure at 0xc00fe700
<6>PnPBIOS: PnP BIOS version 1.0, entry 0xf0000:0xe724, dseg 0xf0000
<6>pnp: 00:10: ioport range 0x100-0x107 has been reserved
<6>pnp: 00:10: ioport range 0x15ee-0x15ef has been reserved
<6>PnPBIOS: 16 nodes reported by PnP BIOS; 16 recorded by driver
<6>isapnp: Scanning for PnP cards...
<6>isapnp: No Plug & Play device found
<4>PCI: Probing PCI hardware
<4>PCI: Probing PCI hardware (bus 00)
<7>Registering system device pic0
<7>Registering system device rtc0
<6>slab: reap timer started for cpu 0
<4>Starting kswapd
<5>aio_setup: sizeof(struct page) = 40
<6>[c4782040] eventpoll: driver installed.
<6>Journalled Block Device driver loaded
<6>devfs: v1.22 (20021013) Richard Gooch (rgooch@atnf.csiro.au)
<6>devfs: boot_options: 0x0
<6>Capability LSM initialized
<6>Initializing Cryptographic API
<6>Serial: 8250/16550 driver $Revision: 1.90 $ IRQ sharing disabled
<4>tts/0 at I/O 0x3f8 (irq = 4) is a 16550A
<3>PnPBIOS: set_dev_node: Unexpected status 0x85
<4>------------[ cut here ]------------
<4>kernel BUG at mm/slab.c:1454!
<4>invalid operand: 0000
<4>
<4>CPU: 0
<4>EIP: 0060:[<c012c4c2>] Not tainted
<4>EFLAGS: 00010093
<4>EIP is at kfree+0x136/0x220
<4>eax: c47fea10 ebx: c47ff080 ecx: c47fe000 edx: 02f84b00
<4>esi: c47fe9e8 edi: 000047fe ebp: c473f800 esp: c4785ef4
<4>ds: 0068 es: 0068 ss: 0068
<4>Process swapper (pid: 1, threadinfo=c4784000 task=c4782040)
<4>Stack: c47fe9ec 00000002 c4762400 00000004 00000000 c47fe9ec 000b3fb0 00000282
<4> c01d01d8 c47fe9ec c4738000 14738000 00520010 c01cdc92 c4762400 c4738000
<4> 00000000 c0318840 c4762400 ffffffed 00000000 c01ccb8f c4762400 c476264c
<4>Call Trace:
<4> [<c01d01d8>] pnpbios_set_resources+0x7c/0x90
<4> [<c01cdc92>] pnp_activate_dev+0xe6/0x114
<4> [<c01ccb8f>] pnp_device_probe+0x33/0xc4
<4> [<c0192723>] bus_match+0x37/0x5c
<4> [<c0192810>] driver_attach+0x44/0x74
<4> [<c0192ab8>] bus_add_driver+0x60/0x80
<4> [<c0192fa5>] driver_register+0x69/0x84
<4> [<c01cccd1>] pnp_register_driver+0x29/0x48
<4> [<c0105024>] init+0x0/0x13c
<4> [<c010503e>] init+0x1a/0x13c
<4> [<c0105024>] init+0x0/0x13c
<4> [<c0106e95>] kernel_thread_helper+0x5/0xc
<4>
<4>Code: 0f 0b ae 05 c8 95 22 c0 8b 49 0c 8b 53 30 89 f0 29 c8 89 54
<4> <0>Kernel panic: Attempted to kill init!
<4> <0>Dumping messages in 0 seconds : last chance for Alt-SysRq...
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-16 22:00 pnpbios oops on boot w/ 2.5.47 Justin A
@ 2002-11-16 22:08 ` Andrew Morton
2002-11-17 1:52 ` Andrew Morton
0 siblings, 1 reply; 10+ messages in thread
From: Andrew Morton @ 2002-11-16 22:08 UTC (permalink / raw)
To: Justin A; +Cc: linux-kernel, Alan Cox
Justin A wrote:
>
> Hi :)
>
> I tried to "port" kmsgdump to 2.5.47 and for some reason, it worked.
>
> Attached is the full dmesg
>
> Alan: I ran dmidecode under 2.4.19 which said simply "PNP BIOS present"
>
> This is a thinkpad 760e, really old..I don't even think I need pnpbios support
> for anything. 2.5.47/2.5.47-ac5 boot with pnpbios turned off, so I think you
> just need to add this to your blacklist?
>
The BUG in slab indicates that something overran the end of a kmalloced
buffer. That'll be either pnp_bios_get_dev_node() or node_set_resources()
ran off the end of `node'.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-17 1:52 ` Andrew Morton
@ 2002-11-16 23:25 ` Adam Belay
2002-11-17 4:35 ` Andrew Morton
2002-11-17 6:00 ` Justin A
0 siblings, 2 replies; 10+ messages in thread
From: Adam Belay @ 2002-11-16 23:25 UTC (permalink / raw)
To: Andrew Morton, Justin A, greg, linux-kernel
On Sat, Nov 16, 2002 at 05:52:21PM -0800, Andrew Morton wrote:
> Andrew Morton wrote:
> >
> > Justin A wrote:
> > >
> > > Hi :)
> > >
> > > I tried to "port" kmsgdump to 2.5.47 and for some reason, it worked.
> > >
> > > Attached is the full dmesg
> > >
> > > Alan: I ran dmidecode under 2.4.19 which said simply "PNP BIOS present"
> > >
> > > This is a thinkpad 760e, really old..I don't even think I need pnpbios
support
If it was calling pnpbios_set_resources you probably do. This means it was
trying to activate a device. If a device is not active you cannot use it.
This device was most likely a serial port or modem. Try turning on PnP
Debug after applying the below patch and see if a device is activated.
> > > for anything. 2.5.47/2.5.47-ac5 boot with pnpbios turned off, so I think
you
> > > just need to add this to your blacklist?
> > >
> >
> > The BUG in slab indicates that something overran the end of a kmalloced
> > buffer. That'll be either pnp_bios_get_dev_node() or node_set_resources()
> > ran off the end of `node'.
>
> err...
>
> node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
>
> max_node_size appears to never be initialised.
Oops. I put the pnpbios_kmalloc in the wrong place. It's amazing it still
worked on my test box. Here's a patch that should fix it. Justin: could you
please try it.
Thanks,
Adam
The typo appears to be in pnpbios_set_resources. Andrew: Is this where you
found it?
--- a/drivers/pnp/pnpbios/core.c Wed Nov 6 17:51:53 2002
+++ b/drivers/pnp/pnpbios/core.c Sat Nov 16 23:03:00 2002
@@ -1285,9 +1285,9 @@
return -EBUSY;
if (flags == PNP_DYNAMIC && !pnp_is_dynamic(dev))
return -EPERM;
- node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
if (pnp_bios_dev_node_info(&node_info) != 0)
return -ENODEV;
+ node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
if (!node)
return -1;
if (pnp_bios_get_dev_node(&nodenum, (char )1, node))
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-16 22:08 ` Andrew Morton
@ 2002-11-17 1:52 ` Andrew Morton
2002-11-16 23:25 ` Adam Belay
0 siblings, 1 reply; 10+ messages in thread
From: Andrew Morton @ 2002-11-17 1:52 UTC (permalink / raw)
To: Justin A, linux-kernel, Alan Cox, ambx1
Andrew Morton wrote:
>
> Justin A wrote:
> >
> > Hi :)
> >
> > I tried to "port" kmsgdump to 2.5.47 and for some reason, it worked.
> >
> > Attached is the full dmesg
> >
> > Alan: I ran dmidecode under 2.4.19 which said simply "PNP BIOS present"
> >
> > This is a thinkpad 760e, really old..I don't even think I need pnpbios support
> > for anything. 2.5.47/2.5.47-ac5 boot with pnpbios turned off, so I think you
> > just need to add this to your blacklist?
> >
>
> The BUG in slab indicates that something overran the end of a kmalloced
> buffer. That'll be either pnp_bios_get_dev_node() or node_set_resources()
> ran off the end of `node'.
err...
node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
max_node_size appears to never be initialised.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-16 23:25 ` Adam Belay
@ 2002-11-17 4:35 ` Andrew Morton
2002-11-17 17:34 ` Adam Belay
2002-11-17 6:00 ` Justin A
1 sibling, 1 reply; 10+ messages in thread
From: Andrew Morton @ 2002-11-17 4:35 UTC (permalink / raw)
To: Adam Belay; +Cc: Justin A, greg, linux-kernel
Adam Belay wrote:
>
> The typo appears to be in pnpbios_set_resources. Andrew: Is this where you
> found it?
Well no.
> --- a/drivers/pnp/pnpbios/core.c Wed Nov 6 17:51:53 2002
> +++ b/drivers/pnp/pnpbios/core.c Sat Nov 16 23:03:00 2002
> @@ -1285,9 +1285,9 @@
> return -EBUSY;
> if (flags == PNP_DYNAMIC && !pnp_is_dynamic(dev))
> return -EPERM;
> - node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> if (pnp_bios_dev_node_info(&node_info) != 0)
> return -ENODEV;
> + node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
As far as I can see, max_node_size is never initialised anywhere.
mnm:/usr/src/25> grep -rI max_node_size .
./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
./fs/reiserfs/fix_node.c: int total_node_size, max_node_size, current_item_size;
./fs/reiserfs/fix_node.c: max_node_size = MAX_CHILD_SIZE (PATH_H_PBUFFER (tb->tb_path, h));
./fs/reiserfs/fix_node.c: if (i == max_node_size)
./fs/reiserfs/fix_node.c: return (i / max_node_size + 1);
./fs/reiserfs/fix_node.c: cur_free = max_node_size;
./fs/reiserfs/fix_node.c: if (total_node_size + current_item_size <= max_node_size) {
./fs/reiserfs/fix_node.c: if (current_item_size > max_node_size) {
./fs/reiserfs/fix_node.c: current_item_size, max_node_size);
./fs/reiserfs/fix_node.c: free_space = max_node_size - total_node_size - IH_SIZE;
./include/linux/pnpbios.h: __u16 max_node_size;
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-16 23:25 ` Adam Belay
2002-11-17 4:35 ` Andrew Morton
@ 2002-11-17 6:00 ` Justin A
2002-11-17 18:05 ` Adam Belay
1 sibling, 1 reply; 10+ messages in thread
From: Justin A @ 2002-11-17 6:00 UTC (permalink / raw)
To: Adam Belay, Andrew Morton, greg, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 834 bytes --]
On Saturday 16 November 2002 06:25 pm, Adam Belay wrote:
> Oops. I put the pnpbios_kmalloc in the wrong place. It's amazing it still
> worked on my test box. Here's a patch that should fix it. Justin: could
> you please try it.
>
> Thanks,
> Adam
I had a fealing that call_pnp_bios was doing something with data so I tried it
anyway with:
CONFIG_PNP=y
CONFIG_PNP_NAMES=y
CONFIG_PNP_DEBUG=y
CONFIG_ISAPNP=y
CONFIG_PNPBIOS=y
and it booted ok. You were right, it was a serial port(even though that port
always worked without pnp:))
I didn't have NAMES and DEBUG on before, so hopefully neither of those is what
fixed it in this case.
Here is the new dmseg, you can ignore the crap at the end, thats just pcmcia
being broken, it goes away if I move /l/m/2/k/d/pcmcia out of the way.
--
-Justin
[-- Attachment #2: dmesg --]
[-- Type: text/plain, Size: 10256 bytes --]
Linux version 2.5.47-ac5 (root@s.bouncybouncy.net) (gcc version 2.95.4 20011002 (Debian prerelease)) #3 Sat Nov 16 23:38:39 EST 2002
Video mode to be used for restore is f00
BIOS-provided physical RAM map:
BIOS-e820: 0000000000000000 - 000000000009fc00 (usable)
BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 0000000004800000 (usable)
BIOS-e820: 00000000fffe0000 - 0000000100000000 (reserved)
72MB LOWMEM available.
On node 0 totalpages: 18432
DMA zone: 4096 pages, LIFO batch:1
Normal zone: 14336 pages, LIFO batch:3
HighMem zone: 0 pages, LIFO batch:1
Building zonelist for node : 0
Kernel command line: BOOT_IMAGE=Linux ro root=302 resume=/dev/hda1
Initializing CPU#0
Detected 119.731 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 235.00 BogoMIPS
Memory: 69968k/73728k available (1115k kernel code, 3284k reserved, 1046k data, 80k init, 0k highmem)
Security Scaffold v1.0.0 initialized
Dentry cache hash table entries: 16384 (order: 5, 131072 bytes)
Inode-cache hash table entries: 8192 (order: 4, 65536 bytes)
Mount-cache hash table entries: 512 (order: 0, 4096 bytes)
-> /dev
-> /dev/console
-> /root
CPU: Before vendor init, caps: 000001bf 00000000 00000000, vendor = 0
Intel Pentium with F0 0F bug - workaround enabled.
CPU: After vendor init, caps: 000001bf 00000000 00000000 00000000
CPU: After generic, caps: 000001bf 00000000 00000000 00000000
CPU: Common caps: 000001bf 00000000 00000000 00000000
CPU: Intel Pentium 75 - 200 stepping 0c
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
Linux Plug and Play Support v0.9 (c) Adam Belay
pnp: the driver 'system' has been registered
PCI: PCI BIOS revision 2.10 entry at 0xfdaa0, last bus=6
PCI: Using configuration type 1
Registering system device cpu0
adding 'CPU 0' to cpu class interfaces
BIO: pool of 256 setup, 14Kb (56 bytes/bio)
biovec pool[0]: 1 bvecs: 134 entries (12 bytes)
biovec pool[1]: 4 bvecs: 134 entries (48 bytes)
biovec pool[2]: 16 bvecs: 134 entries (192 bytes)
biovec pool[3]: 64 bvecs: 67 entries (768 bytes)
biovec pool[4]: 128 bvecs: 33 entries (1536 bytes)
biovec pool[5]: 256 bvecs: 16 entries (3072 bytes)
block request queues:
128 requests per read queue
128 requests per write queue
8 requests per batch
enter congestion at 31
exit congestion at 33
PnPBIOS: Found PnP BIOS installation structure at 0xc00fe700
PnPBIOS: PnP BIOS version 1.0, entry 0xf0000:0xe724, dseg 0xf0000
pnp: pnp: match found with the PnP device '00:10' and the driver 'system'
pnp: 00:10: ioport range 0x100-0x107 has been reserved
pnp: 00:10: ioport range 0x15ee-0x15ef has been reserved
PnPBIOS: 16 nodes reported by PnP BIOS; 16 recorded by driver
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
Registering system device pic0
Registering system device rtc0
slab: reap timer started for cpu 0
Starting kswapd
aio_setup: sizeof(struct page) = 40
[c4782040] eventpoll: driver installed.
Journalled Block Device driver loaded
devfs: v1.22 (20021013) Richard Gooch (rgooch@atnf.csiro.au)
devfs: boot_options: 0x0
Capability LSM initialized
Initializing Cryptographic API
Serial: 8250/16550 driver $Revision: 1.90 $ IRQ sharing disabled
tts/0 at I/O 0x3f8 (irq = 4) is a 16550A
pnp: the driver 'serial' has been registered
pnp: pnp: match found with the PnP device '00:13' and the driver 'serial'
pnp: the device '00:13' has been activated
PnPBIOS: set_dev_node: Unexpected status 0x85
pty: 256 Unix98 ptys configured
Floppy drive(s): fd0 is 1.44M
FDC 0 is a National Semiconductor PC87306
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIXa: IDE controller at PCI slot 00:01.0
PIIXa: chipset revision 2
PIIXa: not 100% native mode: will probe irqs later
PIIXa: neither IDE port enabled (BIOS)
hda: TOSHIBA MK2109MAT, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
hda: host protected area => 1
hda: 4233600 sectors (2168 MB), CHS=525/128/63
/dev/ide/host0/bus0/target0/lun0: p1 p2
input: PS/2 Generic Mouse on isa0060/serio1
serio: i8042 AUX port at 0x60,0x64 irq 12
input: AT Set 2 keyboard on isa0060/serio0
serio: i8042 KBD port at 0x60,0x64 irq 1
NET4: Linux TCP/IP 1.0 for NET4.0
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 8192 bind 8192)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
Resume Machine: resuming from /dev/hda1
Resuming from device ide0(3,1)
Resume Machine: This is normal swap space
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 80k freed
spurious 8259A interrupt: IRQ7.
Adding 145112k swap on /dev/hda1. Priority:-1 extents:1
EXT3 FS 2.4-0.9.16, 02 Dec 2001 on ide0(3,2), internal journal
Linux Kernel Card Services 3.1.22
options: [pci] [cardbus] [pm]
PCI: No IRQ known for interrupt pin A of device 00:02.0. Please try using pci=biosirq.
PCI: No IRQ known for interrupt pin B of device 00:02.1. Please try using pci=biosirq.
Uninitialised timer!
This is just a warning. Your computer is OK
function=0xc50232d4, data=0xc5024fc0
Call Trace:
[<c011ac60>] check_timer_failed+0x40/0x4c
[<c50232d4>] yenta_interrupt_wrapper+0x0/0x30 [yenta_socket]
[<c5024fc0>] pci_socket_array+0x0/0x5c0 [yenta_socket]
[<c5025038>] pci_socket_array+0x78/0x5c0 [yenta_socket]
[<c011ac9a>] add_timer+0x2e/0xec
[<c5025038>] pci_socket_array+0x78/0x5c0 [yenta_socket]
[<c5024fc0>] pci_socket_array+0x0/0x5c0 [yenta_socket]
[<c5024fc0>] pci_socket_array+0x0/0x5c0 [yenta_socket]
[<c5023597>] yenta_open_bh+0x87/0xd4 [yenta_socket]
[<c5025038>] pci_socket_array+0x78/0x5c0 [yenta_socket]
[<c5025004>] pci_socket_array+0x44/0x5c0 [yenta_socket]
[<c012015d>] worker_thread+0x18d/0x240
[<c5024fc0>] pci_socket_array+0x0/0x5c0 [yenta_socket]
[<c011ffd0>] worker_thread+0x0/0x240
[<c5023510>] yenta_open_bh+0x0/0xd4 [yenta_socket]
[<c01116c4>] default_wake_function+0x0/0x2c
[<c01116c4>] default_wake_function+0x0/0x2c
[<c0106f21>] kernel_thread_helper+0x5/0xc
Yenta IRQ list 06b8, PCI irq0
Socket status: 30000006
Uninitialised timer!
This is just a warning. Your computer is OK
function=0xc50232d4, data=0xc5025078
Call Trace:
[<c011ac60>] check_timer_failed+0x40/0x4c
[<c50232d4>] yenta_interrupt_wrapper+0x0/0x30 [yenta_socket]
[<c5025078>] pci_socket_array+0xb8/0x5c0 [yenta_socket]
[<c50250f0>] pci_socket_array+0x130/0x5c0 [yenta_socket]
[<c011ac9a>] add_timer+0x2e/0xec
[<c50250f0>] pci_socket_array+0x130/0x5c0 [yenta_socket]
[<c5025078>] pci_socket_array+0xb8/0x5c0 [yenta_socket]
[<c5025078>] pci_socket_array+0xb8/0x5c0 [yenta_socket]
[<c5023597>] yenta_open_bh+0x87/0xd4 [yenta_socket]
[<c50250f0>] pci_socket_array+0x130/0x5c0 [yenta_socket]
[<c50250bc>] pci_socket_array+0xfc/0x5c0 [yenta_socket]
[<c012015d>] worker_thread+0x18d/0x240
[<c5025078>] pci_socket_array+0xb8/0x5c0 [yenta_socket]
[<c011ffd0>] worker_thread+0x0/0x240
[<c5023510>] yenta_open_bh+0x0/0xd4 [yenta_socket]
[<c01116c4>] default_wake_function+0x0/0x2c
[<c01116c4>] default_wake_function+0x0/0x2c
[<c0106f21>] kernel_thread_helper+0x5/0xc
Yenta IRQ list 06b8, PCI irq0
Socket status: 30000020
cs: cb_alloc(bus 4): vendor 0x1317, device 0x1985
PCI: Enabling device 04:00.0 (0000 -> 0003)
PCI: No IRQ known for interrupt pin A of device 04:00.0. Please try using pci=biosirq.
cs: IO port probe 0x0c00-0x0cff: clean.
cs: IO port probe 0x0800-0x08ff: clean.
cs: IO port probe 0x0100-0x04ff: excluding 0x1a0-0x1af 0x268-0x26f 0x3b8-0x3df 0x4d0-0x4d7
cs: IO port probe 0x0a00-0x0aff: excluding 0xa68-0xa6f
Unable to handle kernel NULL pointer dereference at virtual address 00000034
printing eip:
c01860c1
*pde = 00000000
Oops: 0000
ds yenta_socket pcmcia_core
CPU: 0
EIP: 0060:[<c01860c1>] Not tainted
EFLAGS: 00010046
EIP is at pci_bus_read_config_dword+0x1d/0x58
eax: 00000004 ebx: 00000246 ecx: 00000028 edx: 00000000
esi: 00000004 edi: c10d814c ebp: c3df1cd4 esp: c3df1ae8
ds: 0068 es: 0068 ss: 0068
Process cardmgr (pid: 207, threadinfo=c3df0000 task=c448a0a0)
Stack: c3df1cb4 c3de8800 00000000 c5015b4f 00000004 00000000 00000028 c3df1b18
c3df1cb4 c10d814c c3df1d00 00000007 c4181080 c5017325 c10d814c c3df1cb4
8004640b c10d832c 00000000 00000000 00000000 00000000 c46ef800 00000000
Call Trace:
[<c5015b4f>] pcmcia_get_first_tuple+0x77/0x11c [pcmcia_core]
[<c5017325>] pcmcia_validate_cis+0x65/0x180 [pcmcia_core]
[<c017449b>] journal_cancel_revoke+0xf3/0x168
[<c017012b>] do_get_write_access+0x4b3/0x4d8
[<c01707ff>] journal_dirty_metadata+0x1a7/0x1c0
[<c01661f0>] ext3_do_update_inode+0x338/0x3c8
[<c0166254>] ext3_do_update_inode+0x39c/0x3c8
[<c0166511>] ext3_mark_iloc_dirty+0x21/0x50
[<c0166522>] ext3_mark_iloc_dirty+0x32/0x50
[<c0166615>] ext3_mark_inode_dirty+0x29/0x34
[<c017449b>] journal_cancel_revoke+0xf3/0x168
[<c017012b>] do_get_write_access+0x4b3/0x4d8
[<c017449b>] journal_cancel_revoke+0xf3/0x168
[<c502bf9f>] ds_ioctl+0x397/0x58c [ds]
[<c0166254>] ext3_do_update_inode+0x39c/0x3c8
[<c0170c60>] journal_stop+0x260/0x270
[<c012d1f5>] __pagevec_release+0x15/0x20
[<c012d3a3>] __pagevec_lru_add+0x87/0x90
[<c0128f63>] generic_file_write_nolock+0x997/0x9bc
[<c017012b>] do_get_write_access+0x4b3/0x4d8
[<c012eb9b>] buffered_rmqueue+0xb7/0xc4
[<c0129003>] generic_file_write+0x57/0x6c
[<c01271d6>] find_get_page+0x12/0x20
[<c0127ed7>] filemap_nopage+0xe7/0x2a4
[<c0127f07>] filemap_nopage+0x117/0x2a4
[<c01255fe>] do_no_page+0x24a/0x288
[<c01256a2>] handle_mm_fault+0x66/0xdc
[<c0110207>] do_page_fault+0x127/0x457
[<c01100e0>] do_page_fault+0x0/0x457
[<c012c5d7>] kfree+0x1db/0x220
[<c502bacc>] ds_read+0xc4/0xdc [ds]
[<c0138fed>] vfs_read+0xc1/0x124
[<c01467e9>] sys_ioctl+0x1fd/0x214
[<c0108ebd>] error_code+0x2d/0x40
[<c0108c47>] syscall_call+0x7/0xb
Code: 8b 56 30 8d 44 24 08 50 6a 04 51 8b 44 24 20 50 56 8b 02 ff
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-17 4:35 ` Andrew Morton
@ 2002-11-17 17:34 ` Adam Belay
2002-11-18 17:35 ` Alan Cox
0 siblings, 1 reply; 10+ messages in thread
From: Adam Belay @ 2002-11-17 17:34 UTC (permalink / raw)
To: Andrew Morton; +Cc: Justin A, greg, linux-kernel
On Sat, Nov 16, 2002 at 08:35:54PM -0800, Andrew Morton wrote:
> Adam Belay wrote:
> >
> > The typo appears to be in pnpbios_set_resources. Andrew: Is this where you
> > found it?
>
> Well no.
>
> > --- a/drivers/pnp/pnpbios/core.c Wed Nov 6 17:51:53 2002
> > +++ b/drivers/pnp/pnpbios/core.c Sat Nov 16 23:03:00 2002
> > @@ -1285,9 +1285,9 @@
> > return -EBUSY;
> > if (flags == PNP_DYNAMIC && !pnp_is_dynamic(dev))
> > return -EPERM;
> > - node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> > if (pnp_bios_dev_node_info(&node_info) != 0)
> > return -ENODEV;
> > + node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
>
> As far as I can see, max_node_size is never initialised anywhere.
>
> mnm:/usr/src/25> grep -rI max_node_size .
> ./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./drivers/pnp/pnpbios/core.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./drivers/pnp/pnpbios/proc.c: node = pnpbios_kmalloc(node_info.max_node_size, GFP_KERNEL);
> ./fs/reiserfs/fix_node.c: int total_node_size, max_node_size, current_item_size;
> ./fs/reiserfs/fix_node.c: max_node_size = MAX_CHILD_SIZE (PATH_H_PBUFFER (tb->tb_path, h));
> ./fs/reiserfs/fix_node.c: if (i == max_node_size)
> ./fs/reiserfs/fix_node.c: return (i / max_node_size + 1);
> ./fs/reiserfs/fix_node.c: cur_free = max_node_size;
> ./fs/reiserfs/fix_node.c: if (total_node_size + current_item_size <= max_node_size) {
> ./fs/reiserfs/fix_node.c: if (current_item_size > max_node_size) {
> ./fs/reiserfs/fix_node.c: current_item_size, max_node_size);
> ./fs/reiserfs/fix_node.c: free_space = max_node_size - total_node_size - IH_SIZE;
> ./include/linux/pnpbios.h: __u16 max_node_size;
It may not appear to be initialized but in reality it actually is. pnp_bios_dev_node_info
recieves a pointer to the node_info structure containing max_node_size. It then passes the
pointer to __pnp_bios_dev_node_info which then passes the pointer to call_pnp_bios.
call_pnp_bios is in assembler primarily and writes data directly to the pointer almost as if
it were a buffer. As a result the structure contains a value for max_node_size.
I appreciate your input. Let me know if you need any additional information.
Thanks,
Adam
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-17 6:00 ` Justin A
@ 2002-11-17 18:05 ` Adam Belay
2002-11-17 23:41 ` Justin A
0 siblings, 1 reply; 10+ messages in thread
From: Adam Belay @ 2002-11-17 18:05 UTC (permalink / raw)
To: Justin A; +Cc: linux-kernel, greg
On Sun, Nov 17, 2002 at 01:00:53AM -0500, Justin A wrote:
> On Saturday 16 November 2002 06:25 pm, Adam Belay wrote:
>
> > Oops. I put the pnpbios_kmalloc in the wrong place. It's amazing it still
> > worked on my test box. Here's a patch that should fix it. Justin: could
> > you please try it.
> >
> > Thanks,
> > Adam
> I had a fealing that call_pnp_bios was doing something with data so I tried it
> anyway with:
>
> CONFIG_PNP=y
> CONFIG_PNP_NAMES=y
> CONFIG_PNP_DEBUG=y
> CONFIG_ISAPNP=y
> CONFIG_PNPBIOS=y
>
> and it booted ok. You were right, it was a serial port(even though that port
> always worked without pnp:))
>
> I didn't have NAMES and DEBUG on before, so hopefully neither of those is what
> fixed it in this case.
>
> Here is the new dmseg, you can ignore the crap at the end, thats just pcmcia
> being broken, it goes away if I move /l/m/2/k/d/pcmcia out of the way.
>
> --
> -Justin
> pnp: the driver 'serial' has been registered
> pnp: pnp: match found with the PnP device '00:13' and the driver 'serial'
> pnp: the device '00:13' has been activated
> PnPBIOS: set_dev_node: Unexpected status 0x85
Hmm, this isn't right. 0x85 means unable to set resources. If you have it
could you please send me a copy of the output of lspnp for node 13. I'm not
sure what this device is, do you have a second serial port?
Thanks,
Adam
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-17 18:05 ` Adam Belay
@ 2002-11-17 23:41 ` Justin A
0 siblings, 0 replies; 10+ messages in thread
From: Justin A @ 2002-11-17 23:41 UTC (permalink / raw)
To: Adam Belay; +Cc: linux-kernel, greg
On Sunday 17 November 2002 01:05 pm, Adam Belay wrote:
> >
> > pnp: the driver 'serial' has been registered
> > pnp: pnp: match found with the PnP device '00:13' and the driver 'serial'
> > pnp: the device '00:13' has been activated
> > PnPBIOS: set_dev_node: Unexpected status 0x85
>
> Hmm, this isn't right. 0x85 means unable to set resources. If you have it
> could you please send me a copy of the output of lspnp for node 13. I'm
> not sure what this device is, do you have a second serial port?
>
> Thanks,
> Adam
lspnp output at the end.
It has 2 infrared ports(well its the same port in 2 places....) , one rs232
port on the back, and a modem port.
This is an IBM thinkpad, so imagine BIOS from hell, its all gooey and
useless... I think you are supposed to be able to switch the serial port
from infrared to the rs232 port, but I don't know how. I use the infrared
anyway so thats ok :)
It might be flipping out over the modem, its one of those mwave DSP things.
Neither the modem or the sound work in linux right now... I would need to
install http://www-124.ibm.com/acpmodem/ to get just the modem working..and I
really don't even care :)
If anything I would like the sound to work. I think once its initialized it
ends up being sb compatible, but I think even then its only 8bit sound, which
isn't even worth it.
even after
"PnPBIOS: set_dev_node: Unexpected status 0x85"
The IR port still works, so it doesn't seem to break anything...
13 PNP0501 communications device: RS-232
flags: none [static]
allocated resources:
irq disabled [high edge]
io disabled
possible resources:
[start dep fn]
irq 4 [high edge]
io 0x03f8-0x03ff
[start dep fn]
irq 3 [high edge]
io 0x02f8-0x02ff
[start dep fn]
irq 4 [high edge]
io 0x03e8-0x03ef
[start dep fn]
irq 3 [high edge]
io 0x02e8-0x02ef
[end dep fn]
00 PNP0000 system peripheral: programmable interrupt controller
01 PNP0200 system peripheral: DMA controller
02 PNP0100 system peripheral: system timer
03 PNP0b00 system peripheral: real time clock
04 PNP0303 input device: keyboard
05 PNP0f13 input device: mouse
06 PNP0c04 system peripheral: other
07 PNP0700 mass storage device: floppy
08 PNP0680 mass storage device: IDE
0d PNP0a03 bridge controller: PCI
10 PNP0c02 system peripheral: other
11 PNP0400 communications device: AT parallel port
13 PNP0501 communications device: RS-232
14 IBM0070 communications device: other
15 IBM36e1 multimedia controller: audio
19 PNP0e03 bridge controller: PCMCIA
--
-Justin
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: pnpbios oops on boot w/ 2.5.47
2002-11-17 17:34 ` Adam Belay
@ 2002-11-18 17:35 ` Alan Cox
0 siblings, 0 replies; 10+ messages in thread
From: Alan Cox @ 2002-11-18 17:35 UTC (permalink / raw)
To: Adam Belay; +Cc: Andrew Morton, Justin A, greg, Linux Kernel Mailing List
There is at least one other problem. The pnp layer is initialized way
too early. I've moved pnpbios and isapnp to init after acpi and pci in
my tree and at least one weird oops on Telsa's Cyrix MediaGX + CS5520
box has gone away.
Now to figure out how I broke IDE ;)
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2002-11-18 17:01 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-11-16 22:00 pnpbios oops on boot w/ 2.5.47 Justin A
2002-11-16 22:08 ` Andrew Morton
2002-11-17 1:52 ` Andrew Morton
2002-11-16 23:25 ` Adam Belay
2002-11-17 4:35 ` Andrew Morton
2002-11-17 17:34 ` Adam Belay
2002-11-18 17:35 ` Alan Cox
2002-11-17 6:00 ` Justin A
2002-11-17 18:05 ` Adam Belay
2002-11-17 23:41 ` Justin A
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox