From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,UNPARSEABLE_RELAY,USER_AGENT_GIT autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 72339C4CECE for ; Wed, 18 Sep 2019 07:32:23 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 51E9221924 for ; Wed, 18 Sep 2019 07:32:23 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729221AbfIRHcW (ORCPT ); Wed, 18 Sep 2019 03:32:22 -0400 Received: from mail-il-dmz.mellanox.com ([193.47.165.129]:49574 "EHLO mellanox.co.il" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1729123AbfIRHcU (ORCPT ); Wed, 18 Sep 2019 03:32:20 -0400 Received: from Internal Mail-Server by MTLPINE1 (envelope-from vladbu@mellanox.com) with ESMTPS (AES256-SHA encrypted); 18 Sep 2019 10:32:16 +0300 Received: from reg-r-vrt-018-180.mtr.labs.mlnx. (reg-r-vrt-018-180.mtr.labs.mlnx [10.215.1.1]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id x8I7WGCI021192; Wed, 18 Sep 2019 10:32:16 +0300 From: Vlad Buslov To: netdev@vger.kernel.org Cc: jhs@mojatatu.com, xiyou.wangcong@gmail.com, jiri@resnulli.us, davem@davemloft.net, Vlad Buslov Subject: [PATCH net 0/3] Fix Qdisc destroy issues caused by adding fine-grained locking to filter API Date: Wed, 18 Sep 2019 10:31:58 +0300 Message-Id: <20190918073201.2320-1-vladbu@mellanox.com> X-Mailer: git-send-email 2.21.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org TC filter API unlocking introduced several new fine-grained locks. The change caused sleeping-while-atomic BUGs in several Qdiscs that call cls APIs which need to obtain new mutex while holding sch tree spinlock. This series fixes affected Qdiscs by ensuring that cls API that became sleeping is only called outside of sch tree lock critical section. Vlad Buslov (3): net: sched: sch_htb: don't call qdisc_put() while holding tree lock net: sched: multiq: don't call qdisc_put() while holding tree lock net: sched: sch_sfb: don't call qdisc_put() while holding tree lock net/sched/sch_htb.c | 4 +++- net/sched/sch_multiq.c | 12 +++++++----- net/sched/sch_sfb.c | 5 +++-- 3 files changed, 13 insertions(+), 8 deletions(-) -- 2.21.0