git: eb0d8cb12166 - stable/14 - iommu_gas_match_one(): check for underflow

From: Konstantin Belousov <kib_at_FreeBSD.org>
Date: Tue, 02 Jan 2024 00:41:52 UTC
The branch stable/14 has been updated by kib:

URL: https://cgit.FreeBSD.org/src/commit/?id=eb0d8cb121667bf2c2632a6cc48b44c036cd173a

commit eb0d8cb121667bf2c2632a6cc48b44c036cd173a
Author:     Konstantin Belousov <kib@FreeBSD.org>
AuthorDate: 2023-12-26 00:57:00 +0000
Commit:     Konstantin Belousov <kib@FreeBSD.org>
CommitDate: 2024-01-02 00:41:38 +0000

    iommu_gas_match_one(): check for underflow
    
    (cherry picked from commit a869643e184a73382ef7939b465fd42785e096d1)
---
 sys/dev/iommu/iommu_gas.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/sys/dev/iommu/iommu_gas.c b/sys/dev/iommu/iommu_gas.c
index 4e0bfb116116..cc541e748f48 100644
--- a/sys/dev/iommu/iommu_gas.c
+++ b/sys/dev/iommu/iommu_gas.c
@@ -329,6 +329,8 @@ iommu_gas_match_one(struct iommu_gas_match_args *a, iommu_gaddr_t beg,
 	start = roundup2(beg, a->common->alignment);
 	if (start < beg)
 		return (false);
+	if (end < IOMMU_PAGE_SIZE + 1)
+		return (false);
 	end = MIN(end - IOMMU_PAGE_SIZE - 1, ubound);
 	offset = a->offset;
 	size = a->size;