Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp13421723ybl; Sun, 29 Dec 2019 11:29:36 -0800 (PST) X-Google-Smtp-Source: APXvYqzwAA/+kHBOsRV2O+Vg7TQSiXf2haDZMBM9HTt3ABGjUr6nJ7s3Y2d6br6cADS4wywnwczw X-Received: by 2002:a9d:6f0d:: with SMTP id n13mr72670850otq.165.1577647776370; Sun, 29 Dec 2019 11:29:36 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1577647776; cv=none; d=google.com; s=arc-20160816; b=pv7vUXKgLkYiGGb08PDmKYrogfayrcVm49rj8WbZjR7vP+VI6jRTwWoeQnZHQcXfRT 6A9nBNC/gKWoxpPEGiWs0Jp1mV9USvQm/IMm4uyTK4nofT13uV5EyVzFqKph6dueqiA+ 5lEUAZ1AZL/nzpPB0z/M5Gz18O2lhrF1hwlpHDrMPKD4d7hpemZucUiwzO1PlyI9ms6d wyZt5RDqo3yHkV4QaXmumVO3MmXnMavLAalg3mroF4Bl5JqMsxXn+JAdtN4M3T9GKDSx 8yfAIhK8aNlDMnPOhF6Fe5llBgjLakdkyduC+HkN6MMMzz9XQsBAg/g2A0q9zbOzjbFC dWfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=aL2V/208/l7vqbhEkVWlMsuHBXxH27fosmLo2SxeoXk=; b=d+zJDOfxxYrZp1MD+/Kaqj37Wmxis0O6OPj2AQjtdJW1J4oDdL6/YeOCACIEqMH5W0 mLXOlCedwa1HWXy/i3HM7bm523693TybJUJ7WNu05DLt6DkcbIFPk1O3JBRX7QNBydqF kmejxe+Rc/T+h49QuHHlxuVQ6QP5V4NnG2ulMr3Dk0pt/fEoyW/GCu3ALphAxz5Fl7IR mXkOPrWnftuKz9I9Cy7t+pK3BS7Hn88S6Cn/zPUX0Qc219qISKtqXgdLE/LrsfoyVR51 kW6MCc1pT4JwoPfsCGwjrd4BgzirQCGCJ3qmwMRNbqfQW9E+BEM1IeUM6FJfkKPuK/3V fQFw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Fhbd7vsR; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e192si20835711oib.82.2019.12.29.11.29.13; Sun, 29 Dec 2019 11:29:36 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Fhbd7vsR; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728719AbfL2R3E (ORCPT + 99 others); Sun, 29 Dec 2019 12:29:04 -0500 Received: from mail.kernel.org ([198.145.29.99]:53006 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728706AbfL2R3A (ORCPT ); Sun, 29 Dec 2019 12:29:00 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B37BB207FD; Sun, 29 Dec 2019 17:28:59 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1577640540; bh=ALFhbbApSdf4l2WXg7oZiq2+bihV32/+wcURhNG/0ZM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Fhbd7vsRqjcPfS3QMvcL7x4DHL1nNzIf5O+dxbf+Pm55kXh0+Ee6P9d5NRfJIlcso PtFWOcBv+vKVY3QfStd4UqwTgw4NVM//op0JCo/fjGzOo7WYuAJkpfmKercj3KOr9c P67nhzGV40wspwkYp1SXq+RnphmA8Dz18sKMPL6o= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Allen Pais , Kalle Valo , Sasha Levin Subject: [PATCH 4.19 036/219] libertas: fix a potential NULL pointer dereference Date: Sun, 29 Dec 2019 18:17:18 +0100 Message-Id: <20191229162513.921126199@linuxfoundation.org> X-Mailer: git-send-email 2.24.1 In-Reply-To: <20191229162508.458551679@linuxfoundation.org> References: <20191229162508.458551679@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Allen Pais [ Upstream commit 7da413a18583baaf35dd4a8eb414fa410367d7f2 ] alloc_workqueue is not checked for errors and as a result, a potential NULL dereference could occur. Signed-off-by: Allen Pais Signed-off-by: Kalle Valo Signed-off-by: Sasha Levin --- drivers/net/wireless/marvell/libertas/if_sdio.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/net/wireless/marvell/libertas/if_sdio.c b/drivers/net/wireless/marvell/libertas/if_sdio.c index 39bf85d0ade0..c7f8a29d2606 100644 --- a/drivers/net/wireless/marvell/libertas/if_sdio.c +++ b/drivers/net/wireless/marvell/libertas/if_sdio.c @@ -1183,6 +1183,10 @@ static int if_sdio_probe(struct sdio_func *func, spin_lock_init(&card->lock); card->workqueue = alloc_workqueue("libertas_sdio", WQ_MEM_RECLAIM, 0); + if (unlikely(!card->workqueue)) { + ret = -ENOMEM; + goto err_queue; + } INIT_WORK(&card->packet_worker, if_sdio_host_to_card_worker); init_waitqueue_head(&card->pwron_waitq); @@ -1234,6 +1238,7 @@ err_activate_card: lbs_remove_card(priv); free: destroy_workqueue(card->workqueue); +err_queue: while (card->packets) { packet = card->packets; card->packets = card->packets->next; -- 2.20.1