Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp4023065ybl; Mon, 3 Feb 2020 11:03:12 -0800 (PST) X-Google-Smtp-Source: APXvYqzi6y51SQ3R27PF4Lwm8kFUD0sHw3eu2lIXmwbizXmd+ufRLw2NpFBs2jjjm0JsWKVFUa67 X-Received: by 2002:a05:6830:1d93:: with SMTP id y19mr19314126oti.350.1580756592646; Mon, 03 Feb 2020 11:03:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1580756592; cv=none; d=google.com; s=arc-20160816; b=0tBxmmCH0qXODjPydHebAJanf9ACKAPND8fOifZk9shbfe9yVahSHqOW2MPl72rmPG c0n5ZNpOU8jPesnXF7A8wu8JmI6IPh5sJvuT7D4wuQz3ovsQQaYdby/QZqujpSXj/6ek dr+RdImuYqNb1U16zaamml2s7BVI0e9/fk4BveFs0Uz2+MHsAfdBNaFPxedW8h7MW325 HRlcSifIJVV3+6VeUBMwxr7PeOjOe3lJMpdtf7Q2u2FeAUw7Ga4WppYPZAheOAA/qO4F /OEqPwISgtMeKFR6VgaOqWKv8zqvhhyHRCGdvlxoPHYFLNAkuP2MoLVwH0hvsKiXMWTK m1Xw== 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=maOfM9z4ruebLzlXn/IGjx6P03a6FylWLIbXYUIzDKA=; b=Adl8RNwUuWDrM9ZxmjF8yA9Q2aTvMYKZAmV9SCbXtS4Io8e3Q1nG6BBJpLQYVPl8jT aaxcI7qoRRtFdW+waIqhaA95drIOnoP2zmwmZ7tQyNw0jyn/MDJfW3kqiBQDPVSh1vbo GKfCYK2o3coTcl0qNDrJ5reB5Y0bfml1SZFNNTPE4uqqyFuupI/P8A7ggFtZK7hdpolG rrfbGGHZR4O//dgYCAKVWcXD4CpRFJQ0MzXrYg6AD4ZLXi+UlxHZKt3lDNPdj1c9GSTf HpDf3qRUpkVPqR1eEzCi1RSEbqf6VQ3CH9G89CBHw6uj3bl3O2Bh4tZ/J6HxgRoqnUHn IH/w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=X1PypxdT; 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 l17si3527194otq.59.2020.02.03.11.02.51; Mon, 03 Feb 2020 11:03:12 -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=X1PypxdT; 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 S1728641AbgBCQZm (ORCPT + 99 others); Mon, 3 Feb 2020 11:25:42 -0500 Received: from mail.kernel.org ([198.145.29.99]:36376 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728547AbgBCQZi (ORCPT ); Mon, 3 Feb 2020 11:25:38 -0500 Received: from localhost (unknown [104.132.45.99]) (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 B570C2086A; Mon, 3 Feb 2020 16:25:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1580747138; bh=ckcf98rypvLsz0Vp0cFslnWN27jANYoCwPDwd2GDQGs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=X1PypxdTf0rA809JvyVsEP+pGL6cZXlf1XjjPi60zMI2TBChDAw8pDmsWUrHR1dYa jjDhX8h5qfVCxdXFylv+uoo0nJdWH5wq62H3+d5Ziv0G0NqTUKKVr7Zwc6asfmCrBh i5qqjwGZ1qlXeNQkZbQCIhOEwJZSUXbOsXh+Aq2o= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Herbert Xu , Sasha Levin Subject: [PATCH 4.9 27/68] crypto: pcrypt - Fix user-after-free on module unload Date: Mon, 3 Feb 2020 16:19:23 +0000 Message-Id: <20200203161909.512953235@linuxfoundation.org> X-Mailer: git-send-email 2.25.0 In-Reply-To: <20200203161904.705434837@linuxfoundation.org> References: <20200203161904.705434837@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: Herbert Xu [ Upstream commit 07bfd9bdf568a38d9440c607b72342036011f727 ] On module unload of pcrypt we must unregister the crypto algorithms first and then tear down the padata structure. As otherwise the crypto algorithms are still alive and can be used while the padata structure is being freed. Fixes: 5068c7a883d1 ("crypto: pcrypt - Add pcrypt crypto...") Cc: Signed-off-by: Herbert Xu Signed-off-by: Sasha Levin --- crypto/pcrypt.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/crypto/pcrypt.c b/crypto/pcrypt.c index a5718c0a3dc4e..1348541da463a 100644 --- a/crypto/pcrypt.c +++ b/crypto/pcrypt.c @@ -505,11 +505,12 @@ static int __init pcrypt_init(void) static void __exit pcrypt_exit(void) { + crypto_unregister_template(&pcrypt_tmpl); + pcrypt_fini_padata(&pencrypt); pcrypt_fini_padata(&pdecrypt); kset_unregister(pcrypt_kset); - crypto_unregister_template(&pcrypt_tmpl); } module_init(pcrypt_init); -- 2.20.1