Received: by 2002:a25:824b:0:0:0:0:0 with SMTP id d11csp5854380ybn; Sun, 29 Sep 2019 07:07:46 -0700 (PDT) X-Google-Smtp-Source: APXvYqwwKXLR+R9flk+vN+o1lqX13cTfTQGmlpJSyqQlkroB2J8LZzENDihaEB1V5UwuI+4ypVdq X-Received: by 2002:a17:907:20e4:: with SMTP id rh4mr15390077ejb.59.1569766066221; Sun, 29 Sep 2019 07:07:46 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1569766066; cv=none; d=google.com; s=arc-20160816; b=dz2Qi8rmTx270mxFiWcGiApV1NLXqXfebvZIz/GaD40deRwwUl9xrCUsThNgTaayO5 lnsgcBm3rslQ6V0EHcTsjmrtOMekYc9lNyqT0zR2ZQ+04SVC62C8T9oihXqySglGgWUz /OAk0+yHduwjpJqrvTbD5+2oIbmNGgsbsck/uSw+bxDn2oYo/ocycEm9ffywBbbhgz5x b2hc8aXmx5V++tKVzZ4bTAX/c01hBYqwoYQGCIOrtGGzrNCmpwE/1C76jDXh+y/HxtBg L27j/X5QTdA5ExKmI3F2nS/p2MID/FuU4eiIq6RPCCmRPCJ3Zt+B/ZmCR82K9M9ivl4/ KM7A== 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=3PU6e/hqOPt+fb7bhPDAjBs9qNL3FelHWQZTyx59/FE=; b=k2LtjKt8zJEgnkewPGXXFcF+hMendFXV6HiJnqR64z+lfkXzGZABdpeAf6Qx6xiHNn cJEwlbJBwnok6zs+qTCFiOLZQXM9oZbQtyKKy4WM/uyS5MWTjiGhGHhyzQJBM5pjKt0a jHUQ78It3iqY8G3xxYoiwDGFyhEQ/glp3FfZMhrqK8dB42kfBNe+oNuVSawz3zwF6eup qwg3k1D9/rOQMlAcGs3JG+u75a5gSfJ9d6e/VdIujPajdIMEZNtVmnGaiuAA11lNH0jo 80ang1FcWpAWqjQ64BI/yNpiwIiZNIw3ESTYTrOy7IHRyFq5gh3deQ2UOd6zZfPNXv1r I3vA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=bZ5AbhGX; 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 gl26si5672773ejb.17.2019.09.29.07.07.21; Sun, 29 Sep 2019 07:07:46 -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=bZ5AbhGX; 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 S1729743AbfI2N7d (ORCPT + 99 others); Sun, 29 Sep 2019 09:59:33 -0400 Received: from mail.kernel.org ([198.145.29.99]:40736 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729661AbfI2N7b (ORCPT ); Sun, 29 Sep 2019 09:59:31 -0400 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 C45AD21835; Sun, 29 Sep 2019 13:59:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1569765570; bh=kVAwFbfYiAnUCQrMyyQhRLe3JhsJ4MXJBC72Df8IfMI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=bZ5AbhGXcxDktK93wQliFliZDHd+ajI3bVsGkHzEME9Rj0boGWrL1wtwjB0il3qTr P49QfuBhbcVu1KAoVl9PqQuv2FcN8gws1WqvMf7VABZTSanvnMsPSmdYrqitJZk+Xs zff39Pob/Fn3wl4sxFOMH3svSObHDCz9JzJDnrKQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Vadim Sukhomlinov , Douglas Anderson , Jarkko Sakkinen , Sasha Levin Subject: [PATCH 4.19 33/63] tpm: Fix TPM 1.2 Shutdown sequence to prevent future TPM operations Date: Sun, 29 Sep 2019 15:54:06 +0200 Message-Id: <20190929135038.128262622@linuxfoundation.org> X-Mailer: git-send-email 2.23.0 In-Reply-To: <20190929135031.382429403@linuxfoundation.org> References: <20190929135031.382429403@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: Vadim Sukhomlinov commit db4d8cb9c9f2af71c4d087817160d866ed572cc9 upstream TPM 2.0 Shutdown involve sending TPM2_Shutdown to TPM chip and disabling future TPM operations. TPM 1.2 behavior was different, future TPM operations weren't disabled, causing rare issues. This patch ensures that future TPM operations are disabled. Fixes: d1bd4a792d39 ("tpm: Issue a TPM2_Shutdown for TPM2 devices.") Cc: stable@vger.kernel.org Signed-off-by: Vadim Sukhomlinov [dianders: resolved merge conflicts with mainline] Signed-off-by: Douglas Anderson Reviewed-by: Jarkko Sakkinen Signed-off-by: Jarkko Sakkinen Signed-off-by: Sasha Levin --- drivers/char/tpm/tpm-chip.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/char/tpm/tpm-chip.c b/drivers/char/tpm/tpm-chip.c index 46caadca916a0..dccc61af9ffab 100644 --- a/drivers/char/tpm/tpm-chip.c +++ b/drivers/char/tpm/tpm-chip.c @@ -187,12 +187,15 @@ static int tpm_class_shutdown(struct device *dev) { struct tpm_chip *chip = container_of(dev, struct tpm_chip, dev); + down_write(&chip->ops_sem); if (chip->flags & TPM_CHIP_FLAG_TPM2) { down_write(&chip->ops_sem); tpm2_shutdown(chip, TPM2_SU_CLEAR); chip->ops = NULL; up_write(&chip->ops_sem); } + chip->ops = NULL; + up_write(&chip->ops_sem); return 0; } -- 2.20.1