My advisor Dawson Engler has written a deadlock detector, and we'd like some verification. They look like bugs, unless there is some other reason why two call chains cannot happen at the same time.
Dawson? Hey Dawson!
second one in bpf, between bpfif_lock and bpfd_lock.
thread 1: bpf_tap() /* or bpf_mtap */ BPFIF_LOCK(bp); /* gets this lock */ for (d = bp->bif_dlist; d != 0; d = d->bd_next) { BPFD_LOCK(d); /* waits for thread 2 */
thread 2: bpf_setdlt() BPFD_LOCK(d); /* gets lock */ bpf_detachd(d); /* or bpf_attachd */ BPFIF_LOCK(bp); /* waits for thread 1 */
Yeah, this is my bad. Will have to look if it's possible.
Does this mean you're going to prove -current is "lockably corrrect"? :)
Sam
_______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"

