Bjoern A. Zeeb
bz at FreeBSD.org
Wed Nov 16 14:14:50 UTC 2011
On Wed, 16 Nov 2011, Alexander Motin wrote:
> 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