Received: by 2002:a05:7412:f584:b0:e2:908c:2ebd with SMTP id eh4csp1434944rdb; Mon, 4 Sep 2023 14:06:07 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFTebLLDxc+THXWKvutkeKhuaB3ZWLeQg5csyZ1/t0qcZXoEbtQpfZQOUBx6QHQRpHdr3XU X-Received: by 2002:a17:902:ce8d:b0:1b3:d8ac:8db3 with SMTP id f13-20020a170902ce8d00b001b3d8ac8db3mr13332437plg.6.1693861567035; Mon, 04 Sep 2023 14:06:07 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1693861567; cv=none; d=google.com; s=arc-20160816; b=mdrRHfhaXLlZiVJBjcd2//kiVAqlaCA4ez9Img9fPbTgszBKlIV3MjUZgSgaZdThzc Ms5fIjV/Fn7hCLdKsGuUrFr+ww1mt5+4vRvwhqirXJmNxMbN0ZgC+VWJLKFq0TxllmyF I7nvccu7u2gfIh/0ltVqYc5p/ZHOtqwTDAK/OA73FRmpkOG5JfIPEQEGp4Uxncwp2BUa 1a+oWVRG7KXwOA90jtWULwQEdjyZEz8+9g1w7w/egvEkf0JXwx502TUxxuh+WfG9YTi5 nQnMGYEzUNqBPWQYsX59I8sg9KpDWVDfZ0nD+ycGoqDcdJjvVrdxb2Nz6qf3j5Xj2YHw wrEw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=yMVfBqFG9l5nVNVsYhf0I7O0O1uG5XsXRgmPJmYPDbA=; fh=kc84oTspJorxCUcrKRDprbN19X0jHg1dar0Rf0EVLqA=; b=lDZ8zbjzikZHFWpfupJOrXNDpLFM1kYFL6o7rh2WK+m9HCLMiMjAEJxnvHRFXs00dB kYzp1UnBweasFK1zj7yjWxZkid+KPiqMysyOcQfEyrbwgsd5f7mBbsbhKsQtsU+LfAJD q1VBjjrmxsSYJQrsXOeySN2yTtRaRbJ6AvpUekxXd3XkFNmboA4hEWysngs4Mun6Oi/u Vke4jU0dQrwMkxPpVaoYja8NNiIwmzdxcog5TWpTHA7pR8qQDcDwV1sXLJN+z0HO/Hn6 P5S+/HhJXoV83nlA1rILsXYMp+mdX2DYnB8HpkLkXvdb3gZjmBKamGrp3KBJ+bPBRrEY 8BpA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n14-20020a170902e54e00b001b8a3e851d2si8446740plf.342.2023.09.04.14.05.51; Mon, 04 Sep 2023 14:06:07 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S236215AbjIDUB3 (ORCPT + 99 others); Mon, 4 Sep 2023 16:01:29 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:35712 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232875AbjIDUB1 (ORCPT ); Mon, 4 Sep 2023 16:01:27 -0400 Received: from isilmar-4.linta.de (isilmar-4.linta.de [136.243.71.142]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CC0EECFB for ; Mon, 4 Sep 2023 13:01:15 -0700 (PDT) X-isilmar-external: YES X-isilmar-external: YES Received: from light.dominikbrodowski.net (brodo.linta [10.2.0.102]) by isilmar-4.linta.de (Postfix) with ESMTPSA id 4EB5F200053; Mon, 4 Sep 2023 20:01:14 +0000 (UTC) Received: by light.dominikbrodowski.net (Postfix, from userid 1000) id B898021DC8; Mon, 4 Sep 2023 21:59:48 +0200 (CEST) Date: Mon, 4 Sep 2023 21:59:48 +0200 From: Dominik Brodowski To: Yang Yingliang Cc: linux-kernel@vger.kernel.org Subject: Re: [PATCH] pcmcia: cs: fix possible hung task and memory leak pccardd() Message-ID: References: <20221112092541.3605038-1-yangyingliang@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20221112092541.3605038-1-yangyingliang@huawei.com> X-TUID: VshhPLds3Pal X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am Sat, Nov 12, 2022 at 05:25:41PM +0800 schrieb Yang Yingliang: > If device_register() returns error in pccardd(), it leads two issues: > > 1. The socket_released has never been completed, it will block > pcmcia_unregister_socket(), because of waiting for completion > of socket_released. > 2. The device name allocated by dev_set_name() is leaked. > > Fix this two issues by calling put_device() when device_register() fails. > socket_released can be completed in pcmcia_release_socket(), the name can > be freed in kobject_cleanup(). > > Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2") > Signed-off-by: Yang Yingliang > --- > drivers/pcmcia/cs.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/drivers/pcmcia/cs.c b/drivers/pcmcia/cs.c > index f70197154a36..820cce7c8b40 100644 > --- a/drivers/pcmcia/cs.c > +++ b/drivers/pcmcia/cs.c > @@ -605,6 +605,7 @@ static int pccardd(void *__skt) > dev_warn(&skt->dev, "PCMCIA: unable to register socket\n"); > skt->thread = NULL; > complete(&skt->thread_done); > + put_device(&skt->dev); > return 0; > } > ret = pccard_sysfs_add_socket(&skt->dev); > -- > 2.25.1 > Applied to pcmcia-next, thanks! Dominik