]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob
ae4e38462d6836e4f2af54fb1ba8277666ba7f46
[thirdparty/kernel/stable-queue.git] /
1 From 60c4f423ad0cbe03a285a5c0b6be04ce26e87a26 Mon Sep 17 00:00:00 2001
2 From: Sasha Levin <sashal@kernel.org>
3 Date: Fri, 30 Oct 2020 10:37:24 +0800
4 Subject: iommu/vt-d: Fix a bug for PDP check in prq_event_thread
5
6 From: Liu, Yi L <yi.l.liu@intel.com>
7
8 [ Upstream commit 71cd8e2d16703a9df5c86a9e19f4cba99316cc53 ]
9
10 In prq_event_thread(), the QI_PGRP_PDP is wrongly set by
11 'req->pasid_present' which should be replaced to
12 'req->priv_data_present'.
13
14 Fixes: 5b438f4ba315 ("iommu/vt-d: Support page request in scalable mode")
15 Signed-off-by: Liu, Yi L <yi.l.liu@intel.com>
16 Signed-off-by: Yi Sun <yi.y.sun@linux.intel.com>
17 Acked-by: Lu Baolu <baolu.lu@linux.intel.com>
18 Link: https://lore.kernel.org/r/1604025444-6954-3-git-send-email-yi.y.sun@linux.intel.com
19 Signed-off-by: Joerg Roedel <jroedel@suse.de>
20 Signed-off-by: Sasha Levin <sashal@kernel.org>
21 ---
22 drivers/iommu/intel-svm.c | 2 +-
23 1 file changed, 1 insertion(+), 1 deletion(-)
24
25 diff --git a/drivers/iommu/intel-svm.c b/drivers/iommu/intel-svm.c
26 index 1d3816cd65d57..ec69a99b99bab 100644
27 --- a/drivers/iommu/intel-svm.c
28 +++ b/drivers/iommu/intel-svm.c
29 @@ -646,7 +646,7 @@ static irqreturn_t prq_event_thread(int irq, void *d)
30 resp.qw0 = QI_PGRP_PASID(req->pasid) |
31 QI_PGRP_DID(req->rid) |
32 QI_PGRP_PASID_P(req->pasid_present) |
33 - QI_PGRP_PDP(req->pasid_present) |
34 + QI_PGRP_PDP(req->priv_data_present) |
35 QI_PGRP_RESP_CODE(result) |
36 QI_PGRP_RESP_TYPE;
37 resp.qw1 = QI_PGRP_IDX(req->prg_index) |
38 --
39 2.27.0
40