Print this page
@@ -18,10 +18,11 @@
*
* CDDL HEADER END
*/
/*
* Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright 2015 Joyent, Inc. All rights reserved.
* Copyright 2014 Nexenta Systems, Inc. All rights reserved.
* Copyright 2014 Igor Kozhukhov <ikozhukhov@gmail.com>.
* Copyright 2016, Joyent, Inc.
*/
@@ -188,11 +189,10 @@
size32_t zfsbufsz;
int match; /* match level */
uint32_t doi; /* DOI for label */
caddr32_t label; /* label associated with zone */
int flags;
- zoneid_t zoneid; /* requested zoneid */
} zone_def32;
#endif
typedef struct {
const char *zone_name;
const char *zone_root;
@@ -205,11 +205,10 @@
size_t zfsbufsz;
int match; /* match level */
uint32_t doi; /* DOI for label */
const bslabel_t *label; /* label associated with zone */
int flags;
- zoneid_t zoneid; /* requested zoneid */
} zone_def;
/* extended error information */
#define ZE_UNKNOWN 0 /* No extended error info */
#define ZE_CHROOTED 1 /* tried to zone_create from chroot */
@@ -381,11 +380,11 @@
char *zd_dataset;
list_node_t zd_linkage;
} zone_dataset_t;
/*
- * structure for rctl zone kstats
+ * structure for zone kstats
*/
typedef struct zone_kstat {
kstat_named_t zk_zonename;
kstat_named_t zk_usage;
kstat_named_t zk_value;
@@ -457,11 +456,10 @@
kstat_named_t zm_avenrun15;
kstat_named_t zm_ffcap;
kstat_named_t zm_ffnoproc;
kstat_named_t zm_ffnomem;
kstat_named_t zm_ffmisc;
- kstat_named_t zm_mfseglim;
kstat_named_t zm_nested_intp;
kstat_named_t zm_init_pid;
kstat_named_t zm_boot_time;
} zone_misc_kstat_t;
@@ -502,11 +500,10 @@
* zone_linkage is the zone's linkage into the active or
* death-row list. The field is protected by zonehash_lock.
*/
list_node_t zone_linkage;
zoneid_t zone_id; /* ID of zone */
- zoneid_t zone_did; /* persistent debug ID of zone */
uint_t zone_ref; /* count of zone_hold()s on zone */
uint_t zone_cred_ref; /* count of zone_hold_cred()s on zone */
/*
* Fixed-sized array of subsystem-specific reference counts
* The sum of all of the counts must be less than or equal to zone_ref.
@@ -627,10 +624,17 @@
sys_zio_cntr_t zone_rd_ops; /* Counters for ZFS reads, */
sys_zio_cntr_t zone_wr_ops; /* writes and */
sys_zio_cntr_t zone_lwr_ops; /* logical writes. */
/*
+ * kstats and counters for I/O ops and bytes.
+ */
+ kmutex_t zone_io_lock; /* protects I/O statistics */
+ kstat_t *zone_io_ksp;
+ kstat_io_t *zone_io_kiop;
+
+ /*
* kstats and counters for VFS ops and bytes.
*/
kmutex_t zone_vfs_lock; /* protects VFS statistics */
kstat_t *zone_vfs_ksp;
kstat_io_t zone_vfs_rwstats;
@@ -638,11 +642,10 @@
/*
* kstats for ZFS I/O ops and bytes.
*/
kmutex_t zone_zfs_lock; /* protects ZFS statistics */
- kstat_t *zone_zfs_ksp;
kstat_io_t zone_zfs_rwstats;
zone_zfs_kstat_t *zone_zfs_stats;
/*
* Solaris Auditing per-zone audit context
@@ -705,12 +708,10 @@
uint32_t zone_ffcap; /* hit an rctl cap */
uint32_t zone_ffnoproc; /* get proc/lwp error */
uint32_t zone_ffnomem; /* as_dup/memory error */
uint32_t zone_ffmisc; /* misc. other error */
- uint32_t zone_mfseglim; /* map failure (# segs limit) */
-
uint32_t zone_nested_intp; /* nested interp. kstat */
struct loadavg_s zone_loadavg; /* loadavg for this zone */
uint64_t zone_hp_avenrun[3]; /* high-precision avenrun */
int zone_avenrun[3]; /* FSCALED avg. run queue len */
@@ -763,11 +764,10 @@
extern zone_t *zone_find_by_label(const ts_label_t *);
extern zone_t *zone_find_by_name(char *);
extern zone_t *zone_find_by_any_path(const char *, boolean_t);
extern zone_t *zone_find_by_path(const char *);
extern zoneid_t getzoneid(void);
-extern zoneid_t getzonedid(void);
extern zone_t *zone_find_by_id_nolock(zoneid_t);
extern int zone_datalink_walk(zoneid_t, int (*)(datalink_id_t, void *), void *);
extern int zone_check_datalink(zoneid_t *, datalink_id_t);
extern void zone_loadavg_update();