ATA/Cdrom(?) panic

Bjoern A. Zeeb bz at FreeBSD.org
Wed Nov 16 14:14:50 UTC 2011


On Wed, 16 Nov 2011, Alexander Motin wrote:

> Hi.
>
> On 11/16/11 08:43, Bjoern A. Zeeb wrote:
>> we have seen this or a very similar panic for about 1 year now once in
>> a while and I think I reported it before; this is FreeBSD as guest on
>> vmware.   Seems it was a double panic this time.   Could someone please
>> see what's going on there?    It was on 8.x-STABLE in the past and this
>> is 8.2-RELEASE-p4.
>
> The part of code reporting "completing request directly" is IMHO broken
> by design. It returns request completion before request will actually be
> completed by lower levels without any knowledge of what's going on
> there. There is kind of protection against double request completion,
> but it looks like not always working. May be because that part of code
> is not locked and nothing prevents that semaphore timeout and normal
> request timeout/completion to happen simultaneously. It is surprising to
> see even two traps same time, not sure what synchronized them so precisely.
>
> Simple removing that semaphore timeout is not an option, because it will
> cause deadlock when this wait happen within taskqueue thread that is
> used to handle requests completion and abort that wait. Avoid waiting
> inside taskqueue is also impossible without major rewrite. That's why
> ATA_CAM drops that code completely.

So the bottom line of what you are saying is:
1) it's hard to fix right in 8
2) it's not an issue in 9 anymore at all?

-- 
Bjoern A. Zeeb                                 You have to have visions!
          Stop bit received. Insert coin for new address family.


More information about the freebsd-stable mailing list