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=-7.0 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS 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 69569C433E5 for ; Sat, 18 Jul 2020 01:39:16 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4EC3B2073E for ; Sat, 18 Jul 2020 01:39:16 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728776AbgGRBjP (ORCPT ); Fri, 17 Jul 2020 21:39:15 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34378 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726710AbgGRBjO (ORCPT ); Fri, 17 Jul 2020 21:39:14 -0400 Received: from shards.monkeyblade.net (shards.monkeyblade.net [IPv6:2620:137:e000::1:9]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BAA5EC0619D2; Fri, 17 Jul 2020 18:39:14 -0700 (PDT) Received: from localhost (unknown [IPv6:2601:601:9f00:477::3d5]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: davem-davemloft) by shards.monkeyblade.net (Postfix) with ESMTPSA id 005E011E45910; Fri, 17 Jul 2020 18:39:13 -0700 (PDT) Date: Fri, 17 Jul 2020 18:39:13 -0700 (PDT) Message-Id: <20200717.183913.1150846066923869608.davem@davemloft.net> To: wanghai38@huawei.com Cc: vishal@chelsio.com, kuba@kernel.org, jeff@garzik.org, divy@chelsio.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] net: cxgb3: add missed destroy_workqueue in cxgb3 probe failure From: David Miller In-Reply-To: <20200717062117.8941-1-wanghai38@huawei.com> References: <20200717062117.8941-1-wanghai38@huawei.com> X-Mailer: Mew version 6.8 on Emacs 26.3 Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Fri, 17 Jul 2020 18:39:14 -0700 (PDT) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wang Hai Date: Fri, 17 Jul 2020 14:21:17 +0800 > The driver forgets to call destroy_workqueue when cxgb3 probe fails. > Add the missed calls to fix it. > > Fixes: 4d22de3e6cc4 ("Add support for the latest 1G/10G Chelsio adapter, T3.") > Reported-by: Hulk Robot > Signed-off-by: Wang Hai You have to handle the case that the probing of one or more devices fails yet one or more others succeed. And you can't know in advance how this will play out. This is why the workqueue is unconditionally created, and only destroyed on module remove.