Date: Tue, 19 May 2009 08:53:15 +0200 From: Magnus Kling <klingfon@gmail.com> To: Alexander Motin <mav@freebsd.org> Cc: freebsd-current@freebsd.org Subject: Re: Kernel panic when reboot on server with a Promise SX4000 and two ATA disks RAID1. Message-ID: <43b1bb350905182353v3812c523pa52cdf41ce886907@mail.gmail.com> In-Reply-To: <4A121C40.7040201@FreeBSD.org> References: <43b1bb350905150939s5d503f00x27116e7ffe79a37@mail.gmail.com> <4A10F3E3.40306@FreeBSD.org> <43b1bb350905180025g682d3764qba5a450d85d8f961@mail.gmail.com> <43b1bb350905181331r44b35b13i22aa1ba6a18103ed@mail.gmail.com> <4A121C40.7040201@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
2009/5/19 Alexander Motin <mav@freebsd.org> > Magnus Kling wrote: > >> Compiled once again. No change. The kernel panics. >> > > I don't see obvious problems there. I think something else may erase that > controller softc pointer. Can you try to apply attached patch. It may giv= e > us some more clues about what is actually become wrong there. > > May be it is somehow related to the RAID array built on controller. > ata-raid part is quite complicated and historically was buggy quite often= . > Can you instead of your array drives try to attach some other one without > any array built or just disable ata-raid module? Are you booting from som= e > other device now? > > -- > Alexander Motin > > --- ata-promise.c.prev 2009-05-14 17:57:13.000000000 +0300 > +++ ata-promise.c 2009-05-19 05:20:13.000000000 +0300 > @@ -1053,6 +1053,15 @@ ata_promise_sx4_command(struct ata_reque > { > device_t gparent =3D GRANDPARENT(request->dev); > struct ata_pci_controller *ctlr =3D device_get_softc(gparent); > + > +if (ctlr =3D=3D NULL) { > + printf("ctlr IS NULL!!!\n"); > + device_printf(request->dev, "request->dev\n"); > + device_printf(request->parent, "request->parent\n"); > + device_printf(device_get_parent(request->dev), > "device_get_parent(request->dev)\n"); > + device_printf(gparent, "gparent\n"); > +} > + > struct ata_channel *ch =3D device_get_softc(request->parent); > struct ata_dma_prdentry *prd =3D request->dma->sg; > caddr_t window =3D rman_get_virtual(ctlr->r_res1); > > I applied the patch and rebuilt the kernel. But when should this be printed= ? At shutdown or boot? I can=B4t see it at all. When panic occurs I got the attached text as output on my serial console. The raidcontroller has two ata disks attached. Using RAID 1. My OS is on a separate disk using the motherboards ata connector. Should I disable(unplug the disks) and add a spare harddrive in non-raid state to the raid card? /magnus
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?43b1bb350905182353v3812c523pa52cdf41ce886907>