Received: by 2002:a05:6a10:a0d1:0:0:0:0 with SMTP id j17csp1241845pxa; Thu, 20 Aug 2020 06:33:16 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwVpOY906PneZXVS09LF3WkadSMrFIpML1xyV5n3YH9/24Tjdbw4qwkYtpBZbQI3tH+oNal X-Received: by 2002:a50:d74b:: with SMTP id i11mr3069446edj.136.1597930396516; Thu, 20 Aug 2020 06:33:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1597930396; cv=none; d=google.com; s=arc-20160816; b=hYaK+Tni9iT7UrQpVB8bhbYg8VxNDZBiORJ5+cZ2kE6MMtoPO5T5urYa7p5KDvTM46 qmUS/cBSpG5RYJeiAlROnfO5/PSWB9iCqLl9Ce8fEikE/HTGxiaec5mJ14VzUHnVabBK e2kUhDBRCsOVizj3q6eeOVqxh3NVeqQTd5R3zh9XJc4kUv0YcOyv+64SFFgVVyCLQZRG 0JM0pZoy6g0tWdSKRgx6DOu3tXu5kvrenjWnzhjoaZ1QV0wudbkBePRYQNy8uOLiDImv FJPLMJilczUMUATOk4LvSaXPuVOx5kP3ml4hyiII9NXA/ymiV8u9EKiVnYJAXNWMBDC6 L+fw== 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=hWyfJBE3sRF+Zg6tWbW3md/4tj5ApiDJfPOt8z2WtNM=; b=MfOY9E7aYd603FwAwGHXF5CJcNMtQms7yNkEa3UqJVG3Tr5P4Ksk7y613fz4otD+Bd vbx7uf8FWcd4j9ysSQSjteNHb+qkWg99d4ln3fJ9/PMKTFOsfHp7avG9sEwtbmeZiSgp OwEeRzDFsI6c3rNQGmRxoKjYbLbgbwGWf7XIfbRAQOsAcH02O1yBefqSRU8KMWefT/As a6/VG0PeJC2aVclOgEU3TfVy7Q9PzEOgHcKaaaldjiLhR16irExO1XPXK+W1H+HBspWu xlI5CWQnYtAhEFfYcciz5wNqPEd3hT0bUAes7vqNxC9ypzNbzBYRlTF9get6torS5jB1 +CUA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=VDFRm59m; 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=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ec15si1105971ejb.236.2020.08.20.06.32.51; Thu, 20 Aug 2020 06:33:16 -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=@kernel.org header.s=default header.b=VDFRm59m; 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=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728931AbgHTNcC (ORCPT + 99 others); Thu, 20 Aug 2020 09:32:02 -0400 Received: from mail.kernel.org ([198.145.29.99]:44870 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728125AbgHTJc0 (ORCPT ); Thu, 20 Aug 2020 05:32:26 -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 4E17722BEB; Thu, 20 Aug 2020 09:32:25 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1597915945; bh=YoX+O+1UOgcVdZatpKv5LLn+ibV711RniuxfJZfW09Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VDFRm59mxnOyy/Qsqosw1zGlOkKWy2Nbf5NDQeko/U4NwH1VLOIyQNoxDZwiOk5pZ A73dW/C5RwyxAzLzbew/mYYhzaZOXYT+hNJ4PlQ/CuiuiFk8sUSlRE+W8RsQVAHWKd 0mbwhKJMXrFAZ37ZUga7AL6RwMgZtAXhPAo4vAi4= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jacob Pan , Lu Baolu , Eric Auger , Joerg Roedel , Sasha Levin Subject: [PATCH 5.8 160/232] iommu/vt-d: Warn on out-of-range invalidation address Date: Thu, 20 Aug 2020 11:20:11 +0200 Message-Id: <20200820091620.562216591@linuxfoundation.org> X-Mailer: git-send-email 2.28.0 In-Reply-To: <20200820091612.692383444@linuxfoundation.org> References: <20200820091612.692383444@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: Jacob Pan [ Upstream commit 1ff00279655d95ae9c285c39878aedf9ff008d25 ] For guest requested IOTLB invalidation, address and mask are provided as part of the invalidation data. VT-d HW silently ignores any address bits below the mask. SW shall also allow such case but give warning if address does not align with the mask. This patch relax the fault handling from error to warning and proceed with invalidation request with the given mask. Fixes: 6ee1b77ba3ac0 ("iommu/vt-d: Add svm/sva invalidate function") Signed-off-by: Jacob Pan Signed-off-by: Lu Baolu Reviewed-by: Eric Auger Link: https://lore.kernel.org/r/20200724014925.15523-7-baolu.lu@linux.intel.com Signed-off-by: Joerg Roedel Signed-off-by: Sasha Levin --- drivers/iommu/intel/iommu.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c index e7bce09a9f735..04e82f1756010 100644 --- a/drivers/iommu/intel/iommu.c +++ b/drivers/iommu/intel/iommu.c @@ -5452,13 +5452,12 @@ intel_iommu_sva_invalidate(struct iommu_domain *domain, struct device *dev, switch (BIT(cache_type)) { case IOMMU_CACHE_INV_TYPE_IOTLB: + /* HW will ignore LSB bits based on address mask */ if (inv_info->granularity == IOMMU_INV_GRANU_ADDR && size && (inv_info->addr_info.addr & ((BIT(VTD_PAGE_SHIFT + size)) - 1))) { - pr_err_ratelimited("Address out of range, 0x%llx, size order %llu\n", + pr_err_ratelimited("User address not aligned, 0x%llx, size order %llu\n", inv_info->addr_info.addr, size); - ret = -ERANGE; - goto out_unlock; } /* -- 2.25.1