Lines Matching refs:zone
61 /* zone id restrictions and special ids */
63 #define MIN_USERZONEID 1 /* lowest user-creatable zone ID */
64 #define MIN_ZONEID 0 /* minimum zone ID on system */
89 /* zone attributes */
133 * zone commands.
152 * installation of the zone did not succeed but the user need not perform
161 * installation of the zone did not succeed and the user will need to
187 caddr32_t label; /* label associated with zone */
203 const bslabel_t *label; /* label associated with zone */
210 #define ZE_AREMOUNTS 2 /* there are mounts within the zone */
211 #define ZE_LABELINUSE 3 /* label is already in use by some other zone */
217 * (genunix/zone.c) when you modify this enum.
264 * The zone support infrastructure uses the zone name as a component
273 * Extended Regular expression (see regex(5)) which matches all valid zone
293 #define ZF_REFCOUNTS_LOGGED 0x1 /* a thread logged the zone's refs */
296 * The following threads are set when the zone is created and never changed.
299 #define ZF_HASHED_LABEL 0x2 /* zone has a unique label */
300 #define ZF_IS_SCRATCH 0x4 /* scratch zone */
305 #define ZCF_NET_EXCL 0x1 /* Create a zone with exclusive IP */
307 /* zone network properties */
331 #define GLOBAL_ZONEUNIQID 0 /* uniqid of the global zone */
338 * releases zone references. Each subsystem that invokes
341 * help users and developers quickly identify subsystems that stall zone
344 * NOTE: You must modify zone_ref_subsys_names in usr/src/uts/common/os/zone.c
359 * zone_ref represents a general-purpose references to a zone. Each zone's
360 * references are linked into the zone's zone_t::zone_ref_list. This allows
364 struct zone *zref_zone; /* the zone to which the reference refers */
369 * Structure to record list of ZFS datasets exported to a zone.
377 * structure for zone kstats
413 typedef struct zone {
417 char *zone_name; /* zone's configuration name */
424 * zone_hostid is used for per-zone hostid emulation.
429 * The global zone's zone_hostid must always be HW_INVALID_HOSTID so
432 uint32_t zone_hostid; /* zone's hostid, HW_INVALID_HOSTID */
447 * zone_linkage is the zone's linkage into the active or
451 zoneid_t zone_id; /* ID of zone */
452 uint_t zone_ref; /* count of zone_hold()s on zone */
453 uint_t zone_cred_ref; /* count of zone_hold_cred()s on zone */
465 struct vnode *zone_rootvp; /* zone's root vnode */
466 char *zone_rootpath; /* Path to zone's root + '/' */
469 uint_t zone_ntasks; /* number of tasks executing in zone */
472 /* that are within the zone */
473 rctl_qty_t zone_nlwps; /* number of lwps in zone */
479 uint32_t zone_shares; /* FSS shares allocated to zone */
480 rctl_set_t *zone_rctls; /* zone-wide (zone.*) rctls */
483 /* projects in zone. */
487 /* zone */
491 rctl_qty_t zone_max_swap; /* bytes of swap reserved by zone */
496 rctl_qty_t zone_max_lofi; /* lofi devs for zone */
503 pid_t zone_proc_initpid; /* pid of "init" for this zone */
511 kthread_t *zone_kthreads; /* kernel threads in zone */
512 struct priv_set *zone_privset; /* limit set for zone */
516 struct vfs *zone_vfslist; /* list of FS's mounted in zone */
517 uint64_t zone_uniqid; /* unique zone generation number */
518 struct cred *zone_kcred; /* kcred-like, zone-limited cred */
522 struct pool *zone_pool; /* pool the zone is bound to */
525 psetid_t zone_psetid; /* pset the zone is bound to */
533 int zone_ncpus; /* zone's idea of ncpus */
534 int zone_ncpus_online; /* zone's idea of ncpus_online */
536 * List of ZFS datasets exported to this zone.
540 ts_label_t *zone_slabel; /* zone sensitivity label */
542 tsol_mlp_list_t zone_mlps; /* MLPs on zone-private addresses */
545 struct brand *zone_brand; /* zone's brand */
557 * Solaris Auditing per-zone audit context
569 rctl_qty_t zone_nprocs; /* number of processes in the zone */
583 psecflags_t zone_secflags; /* default zone security-flags */
586 * Misc. kstats and counters for zone cpu-usage aggregation.
588 * values for all threads that are running or have run in the zone.
611 struct loadavg_s zone_loadavg; /* loadavg for this zone */
622 * DTrace-private per-zone state
628 * zone creation/destruction.
647 extern long zone(int, void *, void *, void *, void *);
689 * The definition of a zsd_entry is truly private to zone.c and is only
692 * State maintained for each zone times each registered key, which tracks
703 * Callbacks to be executed when a zone is created, shutdown, and
738 * Macros to help with zone visibility restrictions.
742 * Is process in the global zone?
748 * Can process view objects in given zone?
755 * given zone.
762 #define ZONE_PATH_VISIBLE(path, zone) \
763 (strncmp((path), (zone)->zone_rootpath, \
764 (zone)->zone_rootpathlen - 1) == 0)
768 * from within said zone. It is the responsibility of the caller to
770 * in fact visible from within the zone.
772 #define ZONE_PATH_TRANSLATE(path, zone) \
773 (ASSERT(ZONE_PATH_VISIBLE(path, zone)), \
774 (path) + (zone)->zone_rootpathlen - 2)
783 * create a kernel thread to run within the current zone's context.
790 * Functions for an external observer to register interest in a zone's status
791 * change. Observers will be woken up when the zone status equals the status
806 * Get the status of the zone (at the time it was called). The state may
812 * Safely get the hostid of the specified zone (defaults to machine's hostid
813 * if the specified zone doesn't emulate a hostid). Passing NULL retrieves
814 * the global zone's (i.e., physical system's) hostid.
819 * Get the "kcred" credentials corresponding to the given zone.
824 * Get/set the pool the zone is currently bound to.
830 * Get/set the pset the zone is currently using.
836 * Get the number of cpus/online-cpus visible from the given zone.
842 * Returns true if the named pool/dataset is visible in the current zone.
847 * zone version of kadmin()