git: 154dd1eaa643 - stable/13 - vnet tests: check for if_bridge.ko
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 11 Jun 2024 13:27:39 UTC
The branch stable/13 has been updated by kp:
URL: https://cgit.FreeBSD.org/src/commit/?id=154dd1eaa643ffff4df525dca2e747490df61df3
commit 154dd1eaa643ffff4df525dca2e747490df61df3
Author: Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2024-06-04 18:02:18 +0000
Commit: Kristof Provost <kp@FreeBSD.org>
CommitDate: 2024-06-11 06:05:13 +0000
vnet tests: check for if_bridge.ko
A number of tests create a bridge, but did not check if if_bridge.ko is loaded.
We usually get away with that, because `ifconfig bridge create` autoloads the
module, but if we run the tests in a jail (e.g. because of kyua's upcoming
execenv.jail.params feature) we can't load the module and these tests can fail.
Check if the module is loaded, skip the test if it is not.
Reviewed by: markj
MFC after: 1 week
Event: Kitchener-Waterloo Hackathon 202406
Differential Revision: https://reviews.freebsd.org/D45487
(cherry picked from commit 480ad4055314efbfff7eedbb34272031d836ba89)
---
tests/sys/common/vnet.subr | 7 +++++++
tests/sys/net/if_bridge_test.sh | 11 +++++++++++
tests/sys/netinet/carp.sh | 2 ++
tests/sys/netpfil/common/rdr.sh | 1 +
tests/sys/netpfil/pf/altq.sh | 4 +---
tests/sys/netpfil/pf/pfsync.sh | 1 +
tests/sys/netpfil/pf/sctp.sh | 1 +
tests/sys/netpfil/pf/tcp.sh | 1 +
8 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/tests/sys/common/vnet.subr b/tests/sys/common/vnet.subr
index cc04b326c9db..9e92adc0db75 100644
--- a/tests/sys/common/vnet.subr
+++ b/tests/sys/common/vnet.subr
@@ -16,6 +16,13 @@ vnet_mkepair()
echo ${ifname%a}
}
+vnet_init_bridge()
+{
+ if ! kldstat -q -m if_bridge; then
+ atf_skip "This test requires if_bridge"
+ fi
+}
+
vnet_mkbridge()
{
ifname=$(ifconfig bridge create)
diff --git a/tests/sys/net/if_bridge_test.sh b/tests/sys/net/if_bridge_test.sh
index b9540c79faaa..f67978e25900 100755
--- a/tests/sys/net/if_bridge_test.sh
+++ b/tests/sys/net/if_bridge_test.sh
@@ -39,6 +39,7 @@ bridge_transmit_ipv4_unicast_head()
bridge_transmit_ipv4_unicast_body()
{
vnet_init
+ vnet_init_bridge
epair_alcatraz=$(vnet_mkepair)
epair_singsing=$(vnet_mkepair)
@@ -76,6 +77,7 @@ stp_head()
stp_body()
{
vnet_init
+ vnet_init_bridge
epair_one=$(vnet_mkepair)
epair_two=$(vnet_mkepair)
@@ -142,6 +144,7 @@ stp_vlan_head()
stp_vlan_body()
{
vnet_init
+ vnet_init_bridge
epair_one=$(vnet_mkepair)
epair_two=$(vnet_mkepair)
@@ -216,6 +219,7 @@ static_head()
static_body()
{
vnet_init
+ vnet_init_bridge
epair=$(vnet_mkepair)
bridge=$(vnet_mkbridge)
@@ -273,6 +277,7 @@ span_head()
span_body()
{
vnet_init
+ vnet_init_bridge
epair=$(vnet_mkepair)
epair_span=$(vnet_mkepair)
@@ -326,6 +331,7 @@ delete_with_members_head()
delete_with_members_body()
{
vnet_init
+ vnet_init_bridge
bridge=$(vnet_mkbridge)
epair=$(vnet_mkepair)
@@ -352,6 +358,7 @@ mac_conflict_head()
mac_conflict_body()
{
vnet_init
+ vnet_init_bridge
epair=$(vnet_mkepair)
@@ -390,6 +397,7 @@ inherit_mac_head()
inherit_mac_body()
{
vnet_init
+ vnet_init_bridge
bridge=$(vnet_mkbridge)
epair=$(vnet_mkepair)
@@ -418,6 +426,7 @@ stp_validation_head()
stp_validation_body()
{
vnet_init
+ vnet_init_bridge
epair_one=$(vnet_mkepair)
epair_two=$(vnet_mkepair)
@@ -461,6 +470,7 @@ gif_head()
gif_body()
{
vnet_init
+ vnet_init_bridge
epair=$(vnet_mkepair)
@@ -526,6 +536,7 @@ many_bridge_members_head()
many_bridge_members_body()
{
vnet_init
+ vnet_init_bridge
bridge=$(vnet_mkbridge)
ifcount=256
diff --git a/tests/sys/netinet/carp.sh b/tests/sys/netinet/carp.sh
index 8136b174785f..23dccaf90de6 100755
--- a/tests/sys/netinet/carp.sh
+++ b/tests/sys/netinet/carp.sh
@@ -66,6 +66,7 @@ basic_v4_head()
basic_v4_body()
{
carp_init
+ vnet_init_bridge
bridge=$(vnet_mkbridge)
epair_one=$(vnet_mkepair)
@@ -110,6 +111,7 @@ basic_v6_head()
basic_v6_body()
{
carp_init
+ vnet_init_bridge
bridge=$(vnet_mkbridge)
epair_one=$(vnet_mkepair)
diff --git a/tests/sys/netpfil/common/rdr.sh b/tests/sys/netpfil/common/rdr.sh
index 7d6297870e6c..0d6f27694c8c 100644
--- a/tests/sys/netpfil/common/rdr.sh
+++ b/tests/sys/netpfil/common/rdr.sh
@@ -83,6 +83,7 @@ local_redirect_body()
firewall=$1
firewall_init $firewall
nat_init $firewall
+ vnet_init_bridge
bridge=$(vnet_mkbridge)
ifconfig ${bridge} 192.0.2.1/24 up
diff --git a/tests/sys/netpfil/pf/altq.sh b/tests/sys/netpfil/pf/altq.sh
index 0ced82a3a942..8622ce72dfbf 100644
--- a/tests/sys/netpfil/pf/altq.sh
+++ b/tests/sys/netpfil/pf/altq.sh
@@ -156,9 +156,7 @@ codel_bridge_body()
{
altq_init
is_altq_supported codel
- if ! kldstat -q -m if_bridge; then
- atf_skip "This test requires if_bridge"
- fi
+ vnet_init_bridge
epair=$(vnet_mkepair)
ifconfig ${epair}a 192.0.2.1/24 up
diff --git a/tests/sys/netpfil/pf/pfsync.sh b/tests/sys/netpfil/pf/pfsync.sh
index ada98699efec..8fcfdc2dcfa3 100644
--- a/tests/sys/netpfil/pf/pfsync.sh
+++ b/tests/sys/netpfil/pf/pfsync.sh
@@ -323,6 +323,7 @@ pbr_common_body()
atf_skip "This test requires carp"
fi
pfsynct_init
+ vnet_init_bridge
bridge0=$(vnet_mkbridge)
bridge1=$(vnet_mkbridge)
diff --git a/tests/sys/netpfil/pf/sctp.sh b/tests/sys/netpfil/pf/sctp.sh
index 66225e132d1c..c6dba1719d00 100644
--- a/tests/sys/netpfil/pf/sctp.sh
+++ b/tests/sys/netpfil/pf/sctp.sh
@@ -504,6 +504,7 @@ pfsync_body()
sctp_init
pfsynct_init
+ vnet_init_bridge
if ! kldstat -q -m carp
then
atf_skip "This test requires carp"
diff --git a/tests/sys/netpfil/pf/tcp.sh b/tests/sys/netpfil/pf/tcp.sh
index 84536480b44e..f1bffdba2bfa 100644
--- a/tests/sys/netpfil/pf/tcp.sh
+++ b/tests/sys/netpfil/pf/tcp.sh
@@ -39,6 +39,7 @@ rst_head()
rst_body()
{
pft_init
+ vnet_init_bridge
epair_srv=$(vnet_mkepair)
epair_cl=$(vnet_mkepair)