[Differential] [Commented On] D1711: Changes to the callout code to restore active semantics and also add a test-framework and test to validate thecallout code (and potentially for use by other tests).
hiren (hiren panchasara)
phabric-noreply at FreeBSD.org
Wed Feb 4 10:44:29 UTC 2015
hiren added a comment.
>>! In D1711#59, @rrs wrote:
> Hiren:
>
> Ok looking at kern_timeout.c thats a call to
> class->lc_lock(c_lock, lock_status);
>
> If my 10.x matches yours.
>
> And the call inside that kern_rwlock.c:757
> is
>
> v = rw->rw_lock;
> owner = (struct thread *)RW_OWNER(v);
>
> I would imagine v is probably a freed lock or some such.. not sure.
> If you have a vmcore sending the registers would be helpful. And for that
> matter if you have a vmcore if you could get in the frame of kern_timeout
> and tell me what
> c_lock
> c_func
> are that would be helpful. I have not tested this with my test framework for locks
> that pass in a lock.. If the c_func is not some private thing but something in
> BSD I can puzzle out what sub-system is using the callout this way and
> try to reproduce a test that will blow up this way on me as well.
>
> Assuming of course its not the caller that has freed the
> lock ahead of the callout system running...
panic #3 happened on stable-10+this patch.
I've setup a -head box with this patch to reproduce the problem.
In any case, I'll try to get vmcore and other details tomorrow.
REVISION DETAIL
https://reviews.freebsd.org/D1711
To: rrs, gnn, rwatson, lstewart, jhb, kostikbel, hselasky, adrian, imp, sbruno
Cc: hiren, jhb, kostikbel, emaste, delphij, neel, erj, freebsd-net
More information about the freebsd-net
mailing list