On 11.08.2017 23:18, Cong Wang wrote:
On Thu, Aug 10, 2017 at 2:31 AM, Konstantin Khlebnikov
<khlebni...@yandex-team.ru> wrote:
In previous API tcf_destroy_chain() could be called several times and
some schedulers like hfsc and atm use that. In new API tcf_block_put()
frees block but leaves stale pointer, second call will free it once again.
Which call path do we call tcf_block_put() for multiple times on
the same block? Please be specific, it is not obvious.
For example in hfsc_destroy_qdisc() since
a4aebb83cf0da0363684f1c339f7e6149a3e74c1
second time in hfsc_destroy_class() called from it.
Actually, I see the same pattern in all classy qdiscs.