Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp1701571ybi; Wed, 17 Jul 2019 20:23:43 -0700 (PDT) X-Google-Smtp-Source: APXvYqwxGlVrP4uwr7VlAEwS/OUYZcUZYqN/t78aQFGElAjroQSrItucoHD001UFiMLrEz4hl/cw X-Received: by 2002:a17:90a:20c6:: with SMTP id f64mr48835336pjg.57.1563420223883; Wed, 17 Jul 2019 20:23:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1563420223; cv=none; d=google.com; s=arc-20160816; b=k14vVkUIbTJUWsSFW1AFboHydTN+JnVHDlcNGDTm8pkz8bYGVi+/rQvhc0tU7dS4Cf ZoU1FXOCWRLAW94lCTuUI/O2F2lOUKPtJhqusUkoqBawtYm+B2yev2/bc8U5d9wKKEaM t5nz0M62xE6+pAlBRhR7El0xh0No2+zj8ZJvA1LHvx3vocHPtcQCBxCWaAD1eg0fNeXi sRhXwG06hnz773ZUP+6+qALLjJimtVUoTTKzc6+obkik3RQhzZPv8KsgPDCceBensjSW WVqAg8WKD8YgQGVSrQ6B81Q3ZpmN/icheaf5Jqpg91kSopsz8/y5jkfXx72WJ+eUphNX 0A2Q== 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=VtdW878SMIHno7QP3HzqirY5ahBZyLIulKtC/a9dxsg=; b=hNBafAt0IoeT0JynCzG6UYWflRiLvTItijH+lwsXbwSwgTo8x9F6yKjX2kvfW8FMq3 3tkwsdxCKnX/73JiyLJrYVT03i+1HlES2wWXee3cquH/pWgcdj8pMkDAxDPd8JdGcaX7 ZX3/qGoO3BLceXD2C2piXbI2zT5ver0A1ClTcEqavFuHJXtqTDrAKIx5r75gKeBY+LTf YaaJHhVyDBq0S0pE9VTZcRi93d/Eyuz4RIPDKpKlxDb779IP/3uKYW4HSW1kt+78ZRr1 aM8MPpX0D/F+cPiFXshsko4nEM3diP0zBU38j7q1VQPbIwREp6Bd5jP2f5+zRgN1gqKC fc9g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=fWnwI6G3; 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 bi3si23291143plb.226.2019.07.17.20.23.27; Wed, 17 Jul 2019 20:23:43 -0700 (PDT) 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=fWnwI6G3; 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 S2390842AbfGRDIm (ORCPT + 99 others); Wed, 17 Jul 2019 23:08:42 -0400 Received: from mail.kernel.org ([198.145.29.99]:40796 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2390832AbfGRDIl (ORCPT ); Wed, 17 Jul 2019 23:08:41 -0400 Received: from localhost (115.42.148.210.bf.2iij.net [210.148.42.115]) (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 5FF912173E; Thu, 18 Jul 2019 03:08:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1563419320; bh=8p4jojiR7Bb64yyMgrd8nS9JzGUKMIODQamu7Q/3LrU=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=fWnwI6G3d3uYO/YuNHjlPnHEKvUWAIqM9NUKiWitELaS9VEtI3CqNt0Ke3lPtYGAX QdQpvbe+aM1x9XPMwpKWODSl4XchtjVUDRz3b519Ih7OQEHQb6QR1Tc29cTBO5a0xO ULm4Wujyzc57jC+vv6VKeXANoFyExd3RQsr5vMOw= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jia-Ju Bai , Luca Coelho , Kalle Valo , Sasha Levin Subject: [PATCH 4.14 14/80] iwlwifi: Fix double-free problems in iwl_req_fw_callback() Date: Thu, 18 Jul 2019 12:01:05 +0900 Message-Id: <20190718030059.925355091@linuxfoundation.org> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190718030058.615992480@linuxfoundation.org> References: <20190718030058.615992480@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 [ Upstream commit a8627176b0de7ba3f4524f641ddff4abf23ae4e4 ] In the error handling code of iwl_req_fw_callback(), iwl_dealloc_ucode() is called to free data. In iwl_drv_stop(), iwl_dealloc_ucode() is called again, which can cause double-free problems. To fix this bug, the call to iwl_dealloc_ucode() in iwl_req_fw_callback() is deleted. This bug is found by a runtime fuzzing tool named FIZZER written by us. Signed-off-by: Jia-Ju Bai Signed-off-by: Luca Coelho Signed-off-by: Kalle Valo Signed-off-by: Sasha Levin --- drivers/net/wireless/intel/iwlwifi/iwl-drv.c | 1 - 1 file changed, 1 deletion(-) diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c index 99676d6c4713..6c10b8c4ddbe 100644 --- a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c +++ b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c @@ -1509,7 +1509,6 @@ static void iwl_req_fw_callback(const struct firmware *ucode_raw, void *context) goto free; out_free_fw: - iwl_dealloc_ucode(drv); release_firmware(ucode_raw); out_unbind: complete(&drv->request_firmware_complete); -- 2.20.1