I've made some improvements to the error handling, and fixed the PMP & dump
issues I discovered on siisata/mvsata/ahcisata/pciide. I've also tested
siisata(4) and ahcisata(4) with atapi device to some extend, didn't see any
regression there so far.

I do want to do some more ATAPI testing, and do the wd(4) chaos monkey to
exercise&test the 'regular' error paths better, but other than that, I
think the branch is in quite decent shape. I consider it ready for merge.

Jonathan, do you have any specific concerns still? Particularly, do you
think the remaining XXXs in siisata(4) prevent the branch to be merged?

Jaromir

2017-06-13 22:34 GMT+02:00 Jaromír Doleček <jaromir.dole...@gmail.com>:

> I'll see if I can do some chaos monkey thing for wd(4) to test the error
> paths.
>
> I'm not quite sure what kind of special error recovery would be necessary
> to add though. With NCQ, if there is any error, all pending commands are
> cancelled by the device. There is nothing to recover by HBA. The commands
> just need to be reissued after channel reset, which is done after a timeout
> by wd(4). I think that eventual further error path tweaks really could be
> done on HEAD already, and that it's not necessary to hold off making this
> available for general public.
>
> I'd really prefer not to stretch this relatively simple branch to too
> ambitious rework, like converting ata to thread context or doing base MP
> work.
>
> I do want to test PMP though, thanks for reminder. In my opinion, once
> that is confirmed working, there is no reason really to wait any further
> with the merge.
>
> Is there anything on HEAD which is useful to sync to the branch? I'm
> wondering whether it's useful to sync it to ncq branch right now at all.
>
> Jaromir
>
> 2017-06-08 10:45 GMT+02:00 Jonathan A. Kollasch <jakll...@kollasch.net>:
>
>> On Wed, Jun 07, 2017 at 09:45:48PM +0200, Jaromír Doleček wrote:
>> > Hello,
>> >
>> > I plan to merge the branch to HEAD very soon, likely over the weekend.
>> > Eventual further fixes will be done on HEAD already, including mvsata(4)
>> > restabilization, and potential switch of siisata(4) to support NCQ.
>> >
>> > The plan is to get this pulled up to netbsd-8 branch soon also, so that
>> it
>> > will be part of 8.0.
>> >
>> > Status:
>> > - ahci(4) fully working with NCQ (confirmed with qemu, and real hw)
>> > - piixide(4) continues working (no NCQ support of course) (confirmed in
>> > qemu)
>> > - siisata(4) continues working (without NCQ still) (confirmed with real
>> hw)
>> > - mvsata(4) not yet confirmed working after changes, mainly due the DMA
>> not
>> > really working on Marvell 88SX6042 which I have available - I have same
>> > issue as kern/52126
>> > - other ide/sata drivers received mechanical changes, should continue
>> > working as before
>> >
>> > Jaromir
>>
>> My limited testing has shown that the device error handling paths need
>> work yet.  It's unfortunately been a few weeks since I've tested things,
>> so my memory isn't fresh with the details.  The general issue is that
>> ata(4) is doing error handling in interrupt context, and NCQ error
>> handling is straining that assumption.
>>
>> At this point I advise that the branch could be synced with HEAD and
>> further testing done before merge.  I can not advise that this be
>> pulled up to netbsd-8 before more extensive and comprehensive testing
>> has been done.
>>
>> I've got siisata(4) NCQ stuff I should commit to the branch.
>>
>>         Jonathan Kollasch
>>
>
>

Reply via email to