Date: Wed, 12 Aug 2009 13:21:00 -0700 From: Pyun YongHyeon <pyunyh@gmail.com> To: Gavin Atkinson <gavin.atkinson@ury.york.ac.uk> Cc: freebsd-current@freebsd.org, Jim <stapleton.41@gmail.com> Subject: Re: FreeBSD 8.0 Beta2 / ALC driver crashbase Message-ID: <20090812202100.GB55129@michelle.cdnetworks.com> In-Reply-To: <1250088500.17787.6.camel@buffy.york.ac.uk> References: <80f4f2b20908061705h6b218702ked110fa54d1bee5@mail.gmail.com> <1250088500.17787.6.camel@buffy.york.ac.uk>
next in thread | previous in thread | raw e-mail | index | archive | help
--yrj/dFKFPuw6o+aM Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wed, Aug 12, 2009 at 03:48:20PM +0100, Gavin Atkinson wrote: > On Thu, 2009-08-06 at 20:05 -0400, Jim wrote: > > I couldn't get the copy of the if_alc driver to compile in FreeBSD 7.2 > > on my new notebook, so I decided to use 8.0, and I found an issue, > > when I boot the installer media CD (boot only or DVD1), I get the > > following error: > > > > alc0: <Atheros AR8131 PCIe Gigabit Ethernet> irq 16 at device 0.0 on pci7 > > alc0: 0x40000 bytes of rid 0x10 res 3 failed (0, 0xffffffffffffffff). > > alc0: cannot allocate memory resources). > > > > Fatal trap 12: page fault while in kernel mode > > cpuid = 0; apic id = 00 > > fatal virtual address = 0x08 > > fault code = supervisor read data, page not present > > instruction pointer = 0x20:0xffffffff0024c6e8 > > stack pointer = 0x20:0xffffffff813f65f0 > > frame pointer = 0x20:0xffffffff813f6600 > > code segment = base 0x0, limit 0xfffff, type 0x1b > > = DLP 0, pres 1, long 1, def32 0, gran 1 > > processor eflags = interrupt enabled, resume, IOPL = 0 > > correct process = 0 (swapper) > > [thread pid 0 tid 100000 ] > > Stopped at alc_phy_down+0x0: cmpq $0,0x8(xrax) > > db> > > > > > > I'm not knowledgeable about this to the point where I could debug the > > issue, is there anything I could do to provide the developers with the > > info needed to fix the issue, or could someone tell me how to boot the > > installer and force it to not load if_alc, and suggest give me an idea > > of what this means, in laymans terms so I can try to diagnose it? If I > > had to guess, I would say it's trying to access a chunk of > > memory/address-space that hasn't been allocated or doesn't exist, but > > I don't know if that's correct or where to go from there. > > First thing to do, at the "db> " prompt, enter "bt" and show us the > results. What version of FreeBSD is this? (8.0-BETA2 I'm assuming?) > > There are probably at least two issues here: 1) The allocation shouldn't > fail, but is, and 2) it shouldn't panic. Getting a backtrace (with "bt" > will hopefully be enough to figure out the second issue, but for the > first one we may need a full verbose dmesg from the system. Do you have I guess I found a bug in failure path. Try attached one. > a serial console hooked up to the machine with which you could obtain > this? > > Thanks, > > Gavin --yrj/dFKFPuw6o+aM Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="alc.diff" Index: if_alc.c =================================================================== --- if_alc.c (revision 196104) +++ if_alc.c (working copy) @@ -858,7 +858,8 @@ sc->alc_intrhand[i] = NULL; } } - alc_phy_down(sc); + if (sc->alc_res_spec != NULL) + alc_phy_down(sc); bus_release_resources(dev, sc->alc_irq_spec, sc->alc_irq); if ((sc->alc_flags & (ALC_FLAG_MSI | ALC_FLAG_MSIX)) != 0) pci_release_msi(dev); --yrj/dFKFPuw6o+aM--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090812202100.GB55129>