Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 22 Oct 2024 04:33:17 GMT
From:      Zhenlei Huang <zlei@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org
Subject:   git: d1d839d0b593 - main - ifnet: Assert that we are assigning network stack correctly
Message-ID:  <202410220433.49M4XHrg046637@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch main has been updated by zlei:

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

commit d1d839d0b593541174ca48c675c9eff4ddb4715e
Author:     Zhenlei Huang <zlei@FreeBSD.org>
AuthorDate: 2024-10-22 04:32:24 +0000
Commit:     Zhenlei Huang <zlei@FreeBSD.org>
CommitDate: 2024-10-22 04:32:24 +0000

    ifnet: Assert that we are assigning network stack correctly
    
    It makes no sense to assign NULL vnet to an interface when the kernel
    option VIMAGE is enabled. Add an assertion to catch that.
    
    This will also help diagnosing problem report [1] and [2].
    
    1. https://bugs.freebsd.org/275381
    2. https://bugs.freebsd.org/282168
    
    Reviewed by:    kp
    MFC after:      1 week
    Differential Revision:  https://reviews.freebsd.org/D46982
---
 sys/net/if.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys/net/if.c b/sys/net/if.c
index ebad5c5d16e5..8dc212ae4ac7 100644
--- a/sys/net/if.c
+++ b/sys/net/if.c
@@ -832,6 +832,7 @@ if_attach_internal(struct ifnet *ifp, bool vmove)
 	MPASS(ifindex_table[ifp->if_index].ife_ifnet == ifp);
 
 #ifdef VIMAGE
+	CURVNET_ASSERT_SET();
 	ifp->if_vnet = curvnet;
 	if (ifp->if_home_vnet == NULL)
 		ifp->if_home_vnet = curvnet;


help

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202410220433.49M4XHrg046637>