[Bug 282168] vtnet(4): panic in if_attach_internal() when kldloading

[email protected]
Newsgroups gmane.os.freebsd.devel.net
Message-ID <[email protected]/bugzilla/>
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=282168

--- Comment #8 from Lexi Winter <[email protected]> ---
i can't build world with the patch from D47174 on top of
fa573868f187956b384722a90392866769f4965a.

--- subr_bus.o ---
/data/build/src/freebsd/lf/main/sys/kern/subr_bus.c:2577:26: error: incomplete
definition of type 'struct prison'
 2577 |         KASSERT(IS_DEFAULT_VNET(TD_TO_VNET(curthread)),
      |         ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
 2578 |             ("device_attach: curthread is not in default vnet"));
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:248:25: note: expanded from
macro 'TD_TO_VNET'
  248 | #define TD_TO_VNET(td)          CRED_TO_VNET((td)->td_ucred)
      |                                 ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:247:41: note: expanded from
macro 'CRED_TO_VNET'
  247 | #define CRED_TO_VNET(cr)        (cr)->cr_prison->pr_vnet
      |                                                ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:245:32: note: expanded from
macro 'IS_DEFAULT_VNET'
  245 | #define IS_DEFAULT_VNET(arg)    ((arg) == vnet0)
      |                                   ^
/data/build/src/freebsd/lf/main/sys/sys/kassert.h:144:24: note: expanded from
macro 'KASSERT'
  144 |         if (__predict_false(!(exp)))                                   
\
      |             ~~~~~~~~~~~~~~~~~~^~~~~
/data/build/src/freebsd/lf/main/sys/sys/cdefs.h:315:51: note: expanded from
macro '__predict_false'
  315 | #define __predict_false(exp)    __builtin_expect((exp), 0)
      |                                                   ^~~
/data/build/src/freebsd/lf/main/sys/sys/cpuset.h:152:8: note: forward
declaration of 'struct prison'
  152 | struct prison;
      |        ^
/data/build/src/freebsd/lf/main/sys/kern/subr_bus.c:2579:20: error: incomplete
definition of type 'struct prison'
 2579 |         CURVNET_SET_QUIET(TD_TO_VNET(curthread));
      |         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:248:25: note: expanded from
macro 'TD_TO_VNET'
  248 | #define TD_TO_VNET(td)          CRED_TO_VNET((td)->td_ucred)
      |                                 ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:247:41: note: expanded from
macro 'CRED_TO_VNET'
  247 | #define CRED_TO_VNET(cr)        (cr)->cr_prison->pr_vnet
      |                                                ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:221:15: note: expanded from
macro 'CURVNET_SET_QUIET'
  221 |         VNET_ASSERT((arg) != NULL && (arg)->vnet_magic_n ==
VNET_MAGIC_N, \
      |        
~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  222 |             ("CURVNET_SET at %s:%d %s() curvnet=%p vnet=%p",           
\
      |            
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  223 |             __FILE__, __LINE__, __func__, curvnet, (arg)));            
\
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:184:8: note: expanded from macro
'VNET_ASSERT'
  184 |         if (!(exp))                                                    
\
      |               ^~~
/data/build/src/freebsd/lf/main/sys/sys/cpuset.h:152:8: note: forward
declaration of 'struct prison'
  152 | struct prison;
      |        ^
/data/build/src/freebsd/lf/main/sys/kern/subr_bus.c:2579:20: error: incomplete
definition of type 'struct prison'
 2579 |         CURVNET_SET_QUIET(TD_TO_VNET(curthread));
      |         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:248:25: note: expanded from
macro 'TD_TO_VNET'
  248 | #define TD_TO_VNET(td)          CRED_TO_VNET((td)->td_ucred)
      |                                 ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:247:41: note: expanded from
macro 'CRED_TO_VNET'
  247 | #define CRED_TO_VNET(cr)        (cr)->cr_prison->pr_vnet
      |                                                ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:221:32: note: expanded from
macro 'CURVNET_SET_QUIET'
  221 |         VNET_ASSERT((arg) != NULL && (arg)->vnet_magic_n ==
VNET_MAGIC_N, \
      |        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  222 |             ("CURVNET_SET at %s:%d %s() curvnet=%p vnet=%p",           
\
      |            
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  223 |             __FILE__, __LINE__, __func__, curvnet, (arg)));            
\
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:184:8: note: expanded from macro
'VNET_ASSERT'
  184 |         if (!(exp))                                                    
\
      |               ^~~
/data/build/src/freebsd/lf/main/sys/sys/cpuset.h:152:8: note: forward
declaration of 'struct prison'
  152 | struct prison;
      |        ^
/data/build/src/freebsd/lf/main/sys/kern/subr_bus.c:2579:20: error: incomplete
definition of type 'struct prison'
 2579 |         CURVNET_SET_QUIET(TD_TO_VNET(curthread));
      |         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:248:25: note: expanded from
macro 'TD_TO_VNET'
  248 | #define TD_TO_VNET(td)          CRED_TO_VNET((td)->td_ucred)
      |                                 ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:247:41: note: expanded from
macro 'CRED_TO_VNET'
  247 | #define CRED_TO_VNET(cr)        (cr)->cr_prison->pr_vnet
      |                                                ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:223:46: note: expanded from
macro 'CURVNET_SET_QUIET'
  221 |         VNET_ASSERT((arg) != NULL && (arg)->vnet_magic_n ==
VNET_MAGIC_N, \
      |        
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  222 |             ("CURVNET_SET at %s:%d %s() curvnet=%p vnet=%p",           
\
      |            
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  223 |             __FILE__, __LINE__, __func__, curvnet, (arg)));            
\
      |             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:185:9: note: expanded from macro
'VNET_ASSERT'
  185 |                 panic msg;                                             
\
      |                       ^~~
/data/build/src/freebsd/lf/main/sys/sys/cpuset.h:152:8: note: forward
declaration of 'struct prison'
  152 | struct prison;
      |        ^
/data/build/src/freebsd/lf/main/sys/kern/subr_bus.c:2579:20: error: incomplete
definition of type 'struct prison'
 2579 |         CURVNET_SET_QUIET(TD_TO_VNET(curthread));
      |         ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/data/build/src/freebsd/lf/main/sys/net/vnet.h:248:25: note: expanded from
macro 'TD_TO_VNET'
  248 | #define TD_TO_VNET(td)          CRED_TO_VNET((td)->td_ucred)
      |                                 ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:247:41: note: expanded from
macro 'CRED_TO_VNET'
  247 | #define CRED_TO_VNET(cr)        (cr)->cr_prison->pr_vnet
      |                                                ^
/data/build/src/freebsd/lf/main/sys/net/vnet.h:225:12: note: expanded from
macro 'CURVNET_SET_QUIET'
  225 |         curvnet = arg;  
      |                   ^~~
/data/build/src/freebsd/lf/main/sys/sys/cpuset.h:152:8: note: forward
declaration of 'struct prison'
  152 | struct prison;
      |        ^
5 errors generated.
*** [subr_bus.o] Error code 1

make[2]: stopped making "all" in
/data/build/obj/freebsd/data/build/src/freebsd/lf/main/amd64.amd64/sys/GENERIC

-- 
You are receiving this mail because:
You are the assignee for the bug.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.