Port-i386 archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pcibios(4) related crash during boot on system with General Software BIOS



        Wow! It looks like your machine is failing in the malloc(9) routine.
I know, that sounds obvious!  I wonder if the initial setup isn't allocating
enough kernel  memory.  Or maybe it's not properly recognizing the i/o
hole.  I'm not familiar with the allocator, but I wonder if M_DEBUF is a
special kind of memory that's in short supply, or the system thinks is in
short supply, on that system.

-Brian
On Jun 2,  9:48pm, "Greg A. Woods" wrote:
} Subject: Re: pcibios(4) related crash during boot on system with General S
} --pgp-sign-Multipart_Wed_Jun__2_21:48:26_2010-1
} Content-Type: text/plain; charset=US-ASCII
} Content-Transfer-Encoding: quoted-printable
} 
} At Wed, 2 Jun 2010 15:34:16 -0500, David Young <dyoung%pobox.com@localhost> 
wrote:
} Subject: Re: pcibios(4) related crash during boot on system with General So=
} ftware BIOS
} >=20
} > On Wed, Jun 02, 2010 at 03:52:14PM -0400, Greg A. Woods wrote:
} > > PCI BIOS rev. 2.1 found at 0xff686
} > > pcibios: config mechanism [1][x], special cycles [x][x], last bus 3
} > > uvm_fault(0xc0ab0b60, 0xf1000, 1) -> 0xe
} > > kernel: supervisor trap page fault, code=3D0
} > > Stopped in pid 0.1 (swapper) at 0xc0c01617:     repe movsb      (%esi),=
} %es:(%edi
} > > )
} > > db{0}> trace
} > > _prop_array_pool(c3855a00,c0ab5924,c0ab590a,c045f945,c0a1bf6c) at 0xc0c=
} 01617
} >=20
} > Maybe pcibios_pir_init() jumped through an uninitialized function
} > pointer, or your symtab is too small.
} 
} Weird.  I think you mean the symtab loaded at boot for use by ddb,
} right?  My kernel prints the following at that time:
} 
}       Loaded initial symtab at 0xc0ac5270, strtab at 0xc0b31ad4, # entries 
26185=
} , NKSYMS=3D1
} 
} How do I tell if it's big enough or not?
} 
} 
} > > pcibios_pir_init(c09e8bc4,c0984103,c09840ff,c09840ff,c09840ff) at netbs=
} d:pcibios
} > > _pir_init+0x163
} >=20
} > What line is that?  If you've compiled your kernel with debugging
} > symbols, then gdb can tell you, 'l *(pcibios_pir_init+0x163)'.
} 
} Well, I recompiled what I believe is substantially the same sources with
} "-g", and pcibios.c itself has not been modified in my tree since
} Feb. 10, 2007, and this is what GDB says from the result:
} 
} (gdb) l *(pcibios_pir_init+0x163)
} 0xc064ebd3 is in pcibios_pir_init (/rest/work/woods/m-NetBSD-4/sys/arch/i38=
} 6/pci/pcibios.c:336).
} 331                 sizeof(*pcibios_pir_table), M_DEVBUF, M_NOWAIT);
} 332             if (pcibios_pir_table =3D=3D NULL) {
} 333                     aprint_error("pcibios_pir_init: no memory for $PIR\=
} n");
} 334                     return;
} 335             }
} 336             if (pcibios_get_intr_routing(pcibios_pir_table,
} 337                 &pcibios_pir_table_nentries,
} 338                 &pcibios_pir_header.exclusive_irq) !=3D PCIBIOS_SUCCESS=
} ) {
} 339                     aprint_normal("No PCI IRQ Routing information avail=
} able.\n");
} 340                     free(pcibios_pir_table, M_DEVBUF);
} 
} --=20
}                                               Greg A. Woods
}                                               Planix, Inc.
} 
} <woods%planix.com@localhost>       +1 416 218 0099        
http://www.planix.com/
} 
} --pgp-sign-Multipart_Wed_Jun__2_21:48:26_2010-1
} Content-Type: application/pgp-signature
} Content-Transfer-Encoding: 7bit
} 
} -----BEGIN PGP SIGNATURE-----
} Version: GnuPG v1.4.9 (NetBSD)
} 
} iD8DBQBMBwnqZn1xt3i/9H8RAj/VAKDFaB6I3LmHyY1dZG6d6BCISC0ItACgiPs5
} 7QEhMOceNCjDlujJpBPDfPY=
} =kxNj
} -----END PGP SIGNATURE-----
} 
} --pgp-sign-Multipart_Wed_Jun__2_21:48:26_2010-1--
>-- End of excerpt from "Greg A. Woods"




Home | Main Index | Thread Index | Old Index