Skip to content

Commit 9f831c1

Browse files
birkelundjoergroedel
authored andcommitted
iommu/vt-d: Remove the pasid present check in prq_event_thread
PASID is not strictly needed when handling a PRQ event; remove the check for the pasid present bit in the request. This change was not included in the creation of prq.c to emphasize the change in capability checks when handing PRQ events. Signed-off-by: Klaus Jensen <[email protected]> Reviewed-by: Kevin Tian <[email protected]> Signed-off-by: Joel Granados <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Lu Baolu <[email protected]> Signed-off-by: Joerg Roedel <[email protected]>
1 parent 4d54409 commit 9f831c1

File tree

1 file changed

+2
-8
lines changed

1 file changed

+2
-8
lines changed

drivers/iommu/intel/prq.c

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -222,20 +222,14 @@ static irqreturn_t prq_event_thread(int irq, void *d)
222222
req = &iommu->prq[head / sizeof(*req)];
223223
address = (u64)req->addr << VTD_PAGE_SHIFT;
224224

225-
if (unlikely(!req->pasid_present)) {
226-
pr_err("IOMMU: %s: Page request without PASID\n",
225+
if (unlikely(!is_canonical_address(address))) {
226+
pr_err("IOMMU: %s: Address is not canonical\n",
227227
iommu->name);
228228
bad_req:
229229
handle_bad_prq_event(iommu, req, QI_RESP_INVALID);
230230
goto prq_advance;
231231
}
232232

233-
if (unlikely(!is_canonical_address(address))) {
234-
pr_err("IOMMU: %s: Address is not canonical\n",
235-
iommu->name);
236-
goto bad_req;
237-
}
238-
239233
if (unlikely(req->pm_req && (req->rd_req | req->wr_req))) {
240234
pr_err("IOMMU: %s: Page request in Privilege Mode\n",
241235
iommu->name);

0 commit comments

Comments
 (0)