Lines Matching defs:zone

60 /* zone id restrictions and special ids */
62 #define MIN_USERZONEID 1 /* lowest user-creatable zone ID */
63 #define MIN_ZONEID 0 /* minimum zone ID on system */
88 /* zone attributes */
131 * zone commands.
150 * installation of the zone did not succeed but the user need not perform
159 * installation of the zone did not succeed and the user will need to
185 caddr32_t label; /* label associated with zone */
201 const bslabel_t *label; /* label associated with zone */
208 #define ZE_AREMOUNTS 2 /* there are mounts within the zone */
209 #define ZE_LABELINUSE 3 /* label is already in use by some other zone */
215 * (genunix/zone.c) when you modify this enum.
262 * The zone support infrastructure uses the zone name as a component
271 * Extended Regular expression (see regex(5)) which matches all valid zone
291 #define ZF_REFCOUNTS_LOGGED 0x1 /* a thread logged the zone's refs */
294 * The following threads are set when the zone is created and never changed.
297 #define ZF_HASHED_LABEL 0x2 /* zone has a unique label */
298 #define ZF_IS_SCRATCH 0x4 /* scratch zone */
303 #define ZCF_NET_EXCL 0x1 /* Create a zone with exclusive IP */
305 /* zone network properties */
329 #define GLOBAL_ZONEUNIQID 0 /* uniqid of the global zone */
336 * releases zone references. Each subsystem that invokes
339 * help users and developers quickly identify subsystems that stall zone
342 * NOTE: You must modify zone_ref_subsys_names in usr/src/uts/common/os/zone.c
357 * zone_ref represents a general-purpose references to a zone. Each zone's
358 * references are linked into the zone's zone_t::zone_ref_list. This allows
362 struct zone *zref_zone; /* the zone to which the reference refers */
367 * Structure to record list of ZFS datasets exported to a zone.
375 * structure for zone kstats
404 typedef struct zone {
408 char *zone_name; /* zone's configuration name */
415 * zone_hostid is used for per-zone hostid emulation.
420 * The global zone's zone_hostid must always be HW_INVALID_HOSTID so
423 uint32_t zone_hostid; /* zone's hostid, HW_INVALID_HOSTID */
438 * zone_linkage is the zone's linkage into the active or
442 zoneid_t zone_id; /* ID of zone */
443 uint_t zone_ref; /* count of zone_hold()s on zone */
444 uint_t zone_cred_ref; /* count of zone_hold_cred()s on zone */
456 struct vnode *zone_rootvp; /* zone's root vnode */
457 char *zone_rootpath; /* Path to zone's root + '/' */
460 uint_t zone_ntasks; /* number of tasks executing in zone */
463 /* that are within the zone */
464 rctl_qty_t zone_nlwps; /* number of lwps in zone */
470 uint32_t zone_shares; /* FSS shares allocated to zone */
471 rctl_set_t *zone_rctls; /* zone-wide (zone.*) rctls */
474 /* projects in zone. */
478 /* zone */
482 rctl_qty_t zone_max_swap; /* bytes of swap reserved by zone */
487 rctl_qty_t zone_max_lofi; /* lofi devs for zone */
494 pid_t zone_proc_initpid; /* pid of "init" for this zone */
502 kthread_t *zone_kthreads; /* kernel threads in zone */
503 struct priv_set *zone_privset; /* limit set for zone */
507 struct vfs *zone_vfslist; /* list of FS's mounted in zone */
508 uint64_t zone_uniqid; /* unique zone generation number */
509 struct cred *zone_kcred; /* kcred-like, zone-limited cred */
513 struct pool *zone_pool; /* pool the zone is bound to */
516 psetid_t zone_psetid; /* pset the zone is bound to */
524 int zone_ncpus; /* zone's idea of ncpus */
525 int zone_ncpus_online; /* zone's idea of ncpus_online */
527 * List of ZFS datasets exported to this zone.
531 ts_label_t *zone_slabel; /* zone sensitivity label */
533 tsol_mlp_list_t zone_mlps; /* MLPs on zone-private addresses */
536 struct brand *zone_brand; /* zone's brand */
548 * Solaris Auditing per-zone audit context
560 rctl_qty_t zone_nprocs; /* number of processes in the zone */
566 * Misc. kstats and counters for zone cpu-usage aggregation.
568 * values for all threads that are running or have run in the zone.
589 struct loadavg_s zone_loadavg; /* loadavg for this zone */
600 * DTrace-private per-zone state
606 * zone creation/destruction.
625 extern long zone(int, void *, void *, void *, void *);
667 * The definition of a zsd_entry is truly private to zone.c and is only
670 * State maintained for each zone times each registered key, which tracks
681 * Callbacks to be executed when a zone is created, shutdown, and
716 * Macros to help with zone visibility restrictions.
720 * Is process in the global zone?
726 * Can process view objects in given zone?
733 * given zone.
740 #define ZONE_PATH_VISIBLE(path, zone) \
741 (strncmp((path), (zone)->zone_rootpath, \
742 (zone)->zone_rootpathlen - 1) == 0)
746 * from within said zone. It is the responsibility of the caller to
748 * in fact visible from within the zone.
750 #define ZONE_PATH_TRANSLATE(path, zone) \
751 (ASSERT(ZONE_PATH_VISIBLE(path, zone)), \
752 (path) + (zone)->zone_rootpathlen - 2)
761 * create a kernel thread to run within the current zone's context.
768 * Functions for an external observer to register interest in a zone's status
769 * change. Observers will be woken up when the zone status equals the status
784 * Get the status of the zone (at the time it was called). The state may
790 * Safely get the hostid of the specified zone (defaults to machine's hostid
791 * if the specified zone doesn't emulate a hostid). Passing NULL retrieves
792 * the global zone's (i.e., physical system's) hostid.
797 * Get the "kcred" credentials corresponding to the given zone.
802 * Get/set the pool the zone is currently bound to.
808 * Get/set the pset the zone is currently using.
814 * Get the number of cpus/online-cpus visible from the given zone.
820 * Returns true if the named pool/dataset is visible in the current zone.
825 * zone version of kadmin()