On Sat, Feb 11, 2012 at 01:58:52PM +0100, Tomas Bodzar wrote:
> On Sat, Feb 11, 2012 at 12:41 PM, Delan Azabani <[email protected]> wrote:
> > I have more information, hopefully useful, about this problem. To recap,
> > the installer bsd.rd fails to boot unless I 'disable athn' in UKC. The
> > installer bsd boots, but of course panics because there is no rootfs. I
> > managed to install OpenBSD using bsd.rd (with athn disabled), but upon
> > booting
> > into OpenBSD, I get a fault with a nice trace:
> >
> > ======== BEGIN ========
> > athn0 at pci2 dev 0 function 0 "Atheros AR9300" rev 0x01: apic 4 int 17
> > uvm_fault(0xffffffff80d2a0a0, 0x0, 0, 1) -> e
> > kernel: page fault trap, code=0
> > Stopped at ?? ?? ??athn_write_serdes+0x15: movl ?? ??0(%r13,%rbx,4),%edx
> > athn_write_serdes() at athn_write_serdes+0x15
> > athn_config_pcie() at athn_config_pcie+0x16
> > ar9003_attach() at ar9003_attach+0x199
> > athn_attach() at athn_attach+0x586
> > athn_pci_attach() at athn_pci_attach+0x1de
> > config_attach() at config_attach+0x1d4
> > pci_probe_device() at pci_probe_device+0x462
> > pci_enumerate_bus() at pci_enumerate_bus+0xe9
> > config_attach() at config_attach+0x1d4
> > ppbattach() at ppbattach+0x32f
> > end trace frame: 0xffffffff80e30bf0, count: 0
> > ddb{0}>
> > ======== ??END ??========
> >
> > Like the installer bsd.rd, the installed OpenBSD can boot by disabling athn
> > in UKC. Running 'ps' in ddb shows only 'swapper' running, nothing else.
> > Hopefully someone will be able to gather something from this trace.
>
> Maybe you can try it as well http://www.openbsd.org/faq/faq2.html#Bugs
>
> So install of snapshot and use of system is possible when athn
> disabled in UKC, right? Did you try both i386 and amd64? Do you have
> latest BIOS in your system or are there some repairs available and
> related to your wifi device?
>
> >
I have just tried i386, and all the same symptoms occur. My BIOS is up to date
according to Toshiba's website. Stefan Sperling sent me a possible patch. I
pulled the amd64 kernel sources, patched athn.c, recompiled, and now OpenBSD
boots perfectly without disabling athn. 'ifconfig' shows athn0 too, now.
On Sat, Feb 11, 2012 at 01:37:00PM +0100, Stefan Sperling wrote:
> This might prevent the crash. I have no idea if it will give you
> a working device though. This part of the PCIe config process only
> seems to affect power management but I have no idea what it really does.
>
> Index: athn.c
> ===================================================================
> RCS file: /cvs/src/sys/dev/ic/athn.c,v
> retrieving revision 1.71
> diff -u -p -r1.71 athn.c
> --- athn.c 8 Jan 2011 15:05:24 -0000 1.71
> +++ athn.c 11 Feb 2012 12:30:54 -0000
> @@ -789,7 +789,8 @@ void
> athn_config_pcie(struct athn_softc *sc)
> {
> /* Disable PLL when in L0s as well as receiver clock when in L1. */
> - athn_write_serdes(sc, sc->serdes);
> + if (sc->serdes)
> + athn_write_serdes(sc, sc->serdes);
>
> DELAY(1000);
> /* Allow forcing of PCIe core into L1 state. */