Date: Sun, 4 Apr 2004 13:02:49 -0700 (PDT) From: Doug Ambrisko <ambrisko@ambrisko.com> To: =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@DeepCore.dk> Cc: current@freebsd.org Subject: Re: Intel SATA ICH5/5R 6300ESB support patches Message-ID: <200404042002.i34K2nop038808@ambrisko.com> In-Reply-To: <406EDED3.90708@DeepCore.dk>
next in thread | previous in thread | raw e-mail | index | archive | help
Søren Schmidt writes: [ Charset ISO-8859-1 unsupported, converting... ] | Doug Ambrisko wrote: | > Here are some patches to deal with SATA devices causing errors and | > resulting in wedged systems. Deals with drives removed/powered down, | > drives powered up or plugged in and media errors. We need to | > read the SATA registers and twiddle the port enable on device | > departures. If we don't then the ata code execution will result in | > a lock-up. | > | > I put in a patch for geom for bio_taskqueue_remove. Since ata code | > schedules bio_task it need to be cancelled when we abort and call | > biodone. If we don't cancel this task then when the task is | > run later we get a double free in UMA since we have cleaned up | > twice and called biodone twice for the same request. It seems | > like in biodone we should clean up tasks there. Suggestions | > appreciated. This band-aids it for: | > 1) dd if=/dev/ad2 of=/dev/null | > 2) then power down the drive. | > | > There are other issues on media recovery that I've hit but | > I'm going to do that separate to this HW support. Promise | > patches to deal with SATA issues should be coming soon. | > | > These are based on my -stable patches but are enhanced a little to | > deal with some other cases. | > | > This should make -current systems more stable with SATA drives when | > something goes wrong with them. | > | > I'd like to commit them to -current after a review. | | Well, looks promising, but unfortunatly they collide with the WIP I have | here in the lab, so I'd appreciate if you would not commit it right now. | I'll look into getting the confilicting areas merged into what I have | here, then have you test it on the ICH5 as I dont have any of those | around... Sounds good. If you send me stuff I can test it and/or merge it myself. I have both ICH5 and 6300ESB. The 6300ESB is basically the same with different IDs then the ICH5. BTW the SATA sstatus/scontrol registers are available even though the doc's only claim serror. I have a test setup where I can remotely turn off drives and have a drive with known media errors to test system recovery. Next I'll work on getting the Promise SATA patches that prevent hangs into -current from my -stable patches. This will fix the hangs with thoses cards. I should be able to get the done and tested on Mon. Thanks, Doug A.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200404042002.i34K2nop038808>