[Differential] [Changed Subscribers] 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).

julian (JulianElischer) phabric-noreply at FreeBSD.org
Wed Feb 4 13:06:58 UTC 2015


julian added a subscriber: julian.
julian added a comment.

>>! In D1711#66, @rrs wrote:

> 3) The callout_stop() on CPU 2 does what it is supposed to and sets the cc_cancel bit to true and
>      return 1. This causes callout_stop() to lower the reference count which means when llentry_free()
>      is called the lle *is* freed. This calls into either in_lltable_free() or in6_lltable_free() which
>      unlocks the lock (letting CPU 1 go forward) and then promptly destroys the lock
>      and frees the memory.
>

Surely the  answer is for the other thread to take out a reference so that callout_stop() doesn't get the value to 0

REVISION DETAIL
  https://reviews.freebsd.org/D1711

To: rrs, gnn, rwatson, lstewart, jhb, kostikbel, hselasky, adrian, imp, sbruno
Cc: julian, hiren, jhb, kostikbel, emaste, delphij, neel, erj, freebsd-net


More information about the freebsd-net mailing list