From mboxrd@z Thu Jan 1 00:00:00 1970 From: Florian Westphal Subject: Re: [PATCH] net/sched: reset block pointer in tcf_block_put() Date: Fri, 11 Aug 2017 22:32:46 +0200 Message-ID: <20170811203246.GA32076@breakpoint.cc> References: <150235751251.493255.14955523507789154918.stgit@buzz> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Konstantin Khlebnikov , Linux Kernel Network Developers , Jiri Pirko , "David S. Miller" , Jamal Hadi Salim To: Cong Wang Return-path: Received: from Chamillionaire.breakpoint.cc ([146.0.238.67]:53538 "EHLO Chamillionaire.breakpoint.cc" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753256AbdHKUfG (ORCPT ); Fri, 11 Aug 2017 16:35:06 -0400 Content-Disposition: inline In-Reply-To: Sender: netdev-owner@vger.kernel.org List-ID: Cong Wang wrote: > On Thu, Aug 10, 2017 at 2:31 AM, Konstantin Khlebnikov > 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. you can use tools/testing/selftests/net/rtnetlink.sh to reproduce this (kernel panics on delete of root qdisc).