Changeset View
Changeset View
Standalone View
Standalone View
sys/sys/domain.h
Show First 20 Lines • Show All 65 Lines • ▼ Show 20 Lines | struct domain { | ||||
void (*dom_ifdetach)(struct ifnet *, void *); | void (*dom_ifdetach)(struct ifnet *, void *); | ||||
int (*dom_ifmtu)(struct ifnet *); | int (*dom_ifmtu)(struct ifnet *); | ||||
/* af-dependent data on ifnet */ | /* af-dependent data on ifnet */ | ||||
}; | }; | ||||
/* dom_flags */ | /* dom_flags */ | ||||
#define DOMF_SUPPORTED 0x0001 /* System supports this domain. */ | #define DOMF_SUPPORTED 0x0001 /* System supports this domain. */ | ||||
#define DOMF_INITED 0x0002 /* Initialized in the default vnet. */ | #define DOMF_INITED 0x0002 /* Initialized in the default vnet. */ | ||||
#define DOMF_UNLOADABLE 0x0004 /* Can be unloaded */ | |||||
#ifdef _KERNEL | #ifdef _KERNEL | ||||
extern int domain_init_status; | extern int domain_init_status; | ||||
extern struct domain *domains; | extern struct domain *domains; | ||||
void domain_add(void *); | void domain_add(void *); | ||||
void domain_remove(void *); | |||||
void domain_init(void *); | void domain_init(void *); | ||||
#ifdef VIMAGE | #ifdef VIMAGE | ||||
void vnet_domain_init(void *); | void vnet_domain_init(void *); | ||||
void vnet_domain_uninit(void *); | void vnet_domain_uninit(void *); | ||||
#endif | #endif | ||||
#define DOMAIN_SET(name) \ | #define DOMAIN_SET(name) \ | ||||
SYSINIT(domain_add_ ## name, SI_SUB_PROTO_DOMAIN, \ | SYSINIT(domain_add_ ## name, SI_SUB_PROTO_DOMAIN, \ | ||||
SI_ORDER_FIRST, domain_add, & name ## domain); \ | SI_ORDER_FIRST, domain_add, & name ## domain); \ | ||||
SYSUNINIT(domain_remove_ ## name, SI_SUB_PROTO_DOMAIN, \ | |||||
SI_ORDER_FIRST, domain_remove, & name ## domain); \ | |||||
SYSINIT(domain_init_ ## name, SI_SUB_PROTO_DOMAIN, \ | SYSINIT(domain_init_ ## name, SI_SUB_PROTO_DOMAIN, \ | ||||
SI_ORDER_SECOND, domain_init, & name ## domain); | SI_ORDER_SECOND, domain_init, & name ## domain); | ||||
#endif /* _KERNEL */ | #endif /* _KERNEL */ | ||||
#endif /* !_SYS_DOMAIN_H_ */ | #endif /* !_SYS_DOMAIN_H_ */ |