Received: by 2002:a05:6a10:a852:0:0:0:0 with SMTP id d18csp1717646pxy; Sun, 2 May 2021 00:07:08 -0700 (PDT) X-Google-Smtp-Source: ABdhPJy3OT+aymrDKCL9EteHlw4G5NgW2nNBApKd6IJgodf5mV5ttZJCiOJCIB2BN5Mfp1coKK/H X-Received: by 2002:a05:6a00:ac6:b029:27b:5d2:6e66 with SMTP id c6-20020a056a000ac6b029027b05d26e66mr12949587pfl.14.1619939228368; Sun, 02 May 2021 00:07:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1619939228; cv=none; d=google.com; s=arc-20160816; b=fhZ8x9hEs6MID8tnCzv6fZPZl5kdOkDFbGSVXh5fui40s8AAVZ6zkVA5UteyV0y1fH 75uiZ1aqTpaI+0R114BGKcT2gpGK28uj+CddZS8rz4O9Y5646Qs0rJ1rjjsLa5MVlcUh s7aqtt/bRuO3xkWh9uK7bCorIBygv9Ez9xQmzz1b4IDddXEa8CE2suSln/pIbEsF3XFD 9jvG3vZJbmdX+zwSd6LPkCcjyhEO2Sosi/x6Fj7TFn5UDgXfLys8dGqtIrAxwHB7S2tG MFqfAGhks2sbizSgmfv3rHt03LxhXWcOdYonCz80cdRnzodooJJckaMB6cObHUn0Yeso KGRw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=ps8y9GbhEBsLGzJr1aFWBUm18dOXtTvNE0fP/wilCNA=; b=tG/3x8xg3nBv/XGz/JQnB2fcJ9mxCdyB5M5v81HGPp7OhzhJnYOSiVm8rCMorFQFfy NReQrO49IviBNZhyZIeZzQoZcvpKLnrhcBizeGsRqfMkWwHNm3f2XLBKvvw5ieD/6dZ5 qXXshwO3LnY/7eVtau2K/crsLhBaC9Uw/o64NpnKkwXa/stwm++p48VORIjZ3k/tJgxo TUINjJosoOkE1jR29iUEMORnienvOWn954hn/ALI6CqOrYaknHX1E9w0lr6cOXm531dJ 2yd6J4RTo73WE7oJPbOwYmG9w7kXB33zxUX9XIQtsC5+A5r0gJXU/zG5t05nbUHHXc1/ UyQw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=nzAOPawl; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id o34si12366074pgm.247.2021.05.02.00.06.29; Sun, 02 May 2021 00:07:08 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=nzAOPawl; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229789AbhEBHGC (ORCPT + 99 others); Sun, 2 May 2021 03:06:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36170 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229676AbhEBHGC (ORCPT ); Sun, 2 May 2021 03:06:02 -0400 Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com [IPv6:2607:f8b0:4864:20::1029]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 13E44C06174A for ; Sun, 2 May 2021 00:05:11 -0700 (PDT) Received: by mail-pj1-x1029.google.com with SMTP id j6-20020a17090adc86b02900cbfe6f2c96so1579504pjv.1 for ; Sun, 02 May 2021 00:05:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ps8y9GbhEBsLGzJr1aFWBUm18dOXtTvNE0fP/wilCNA=; b=nzAOPawlkFRQBAAKpT/I7SCsKt3G7/7pFFxpmCxNWUu7nCA7k/PR6WqLYOmSsnEfWF /SNPniMJHRJDDtKSXh6qsAZ35Eivh60QDg4VJpd/RfmS0lrr1T98g3+ItK15jfZjYd++ lDjdK5AFe4JyBV9NN2qQOYnWhsAU/HaqXYx49DOu2cAApP8i9AFnhaAA7h9hRKY72WsW dhT2Y6mQWFSpZJPPs+fD8d3rOfe2n4qw0ixk4f5MfCn0UQTNFYKaDNm8UrazYPLbag/N Wtc/rE7BiMDsp/3X1zVMgDzLMC34egdoYXC7EDl1fhWLkARXvnZwfKi2/CQ3yb5cmLDM LXug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=ps8y9GbhEBsLGzJr1aFWBUm18dOXtTvNE0fP/wilCNA=; b=pkVYMrXawDH751JgKCBDLScOQfjpoPIdJdfYv0lI5Epe0X87hlb2+7XRW2ofsybO37 YV+zzhfgmMlH4HE6CW0Ib6+/0VR2OOgnXrXjnZ1l6bb63//h+68Z6STSjCfm44syEewq qUIrbIIm1q5pwjg99PX86sU2XQn8U7FHAwxQyP8v+qdDonNYmK3yuhaJkSWT5t6+riaV tF69rpA0tq4u1mEVTdX/Hq7bNjUSL/EjBCxYkVD25kMLxgz+1lCAVBxFfJX0Adh/FzMh WNPI18gk10QOEnI3mY5XJgjjnCg+ntTnRAVvswUD1msTHCDNGm+75zs5wjHHhNeKG48N tvvA== X-Gm-Message-State: AOAM5313ryfpipvs0/7xX99elHtKg/bg+7gdqcWew0IZTrjQoCprGHA4 xw8UejMlDXQdBdq6DGTbU9I= X-Received: by 2002:a17:90a:7896:: with SMTP id x22mr14335204pjk.182.1619939110572; Sun, 02 May 2021 00:05:10 -0700 (PDT) Received: from sc2-haas01-esx0118.eng.vmware.com ([66.170.99.1]) by smtp.gmail.com with ESMTPSA id r18sm14345713pjo.30.2021.05.02.00.05.09 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 02 May 2021 00:05:10 -0700 (PDT) From: Nadav Amit X-Google-Original-From: Nadav Amit To: Joerg Roedel , Will Deacon Cc: Nadav Amit , Jiajun Cao , iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/4] iommu/amd: Fix wrong parentheses on page-specific invalidations Date: Sat, 1 May 2021 23:59:56 -0700 Message-Id: <20210502070001.1559127-2-namit@vmware.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210502070001.1559127-1-namit@vmware.com> References: <20210502070001.1559127-1-namit@vmware.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Nadav Amit The logic to determine the mask of page-specific invalidations was tested in userspace. As the code was copied into the kernel, the parentheses were mistakenly set in the wrong place, resulting in the wrong mask. Fix it. Cc: Joerg Roedel Cc: Will Deacon Cc: Jiajun Cao Cc: iommu@lists.linux-foundation.org Cc: linux-kernel@vger.kernel.org Fixes: 268aa4548277 ("iommu/amd: Page-specific invalidations for more than one page") Signed-off-by: Nadav Amit --- drivers/iommu/amd/iommu.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c index 80e8e1916dd1..6723cbcf4030 100644 --- a/drivers/iommu/amd/iommu.c +++ b/drivers/iommu/amd/iommu.c @@ -884,7 +884,7 @@ static inline u64 build_inv_address(u64 address, size_t size) * The msb-bit must be clear on the address. Just set all the * lower bits. */ - address |= 1ull << (msb_diff - 1); + address |= (1ull << msb_diff) - 1; } /* Clear bits 11:0 */ -- 2.25.1