From 8f0916fc1167789bbafa9231c1e8a2bb4a4a852c Mon Sep 17 00:00:00 2001
From: Konstantin Belousov <kib@FreeBSD.org>
Date: Fri, 18 Jan 2019 13:43:11 +0000
Subject: [PATCH] i386/PAE busdma: allow more bounce pages.

If i386 has more than 4G of memory, allow the same number of busdma
bounce pages as for amd64.  In fact, in this case bouncing sometimes
is much heavier than on amd64.

Reviewed by:	markj
Tested by:	pho
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
Differential revision:	https://reviews.freebsd.org/D18854
---
 sys/x86/x86/busdma_bounce.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/x86/x86/busdma_bounce.c b/sys/x86/x86/busdma_bounce.c
index a57904411fa9..79eabed65a55 100644
--- a/sys/x86/x86/busdma_bounce.c
+++ b/sys/x86/x86/busdma_bounce.c
@@ -57,7 +57,7 @@ __FBSDID("$FreeBSD$");
 #include <x86/include/busdma_impl.h>
 
 #ifdef __i386__
-#define MAX_BPAGES 512
+#define MAX_BPAGES (Maxmem > atop(0x100000000ULL) ? 8192 : 512)
 #else
 #define MAX_BPAGES 8192
 #endif