--- a/usr/src/uts/common/fs/zfs/arc.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/arc.c Tue Jun 11 09:13:33 2013 -0800
@@ -58,11 +58,11 @@
* tight.
*
* 3. The Megiddo and Modha model assumes a fixed page size. All
- * elements of the cache are therefor exactly the same size. So
+ * elements of the cache are therefore exactly the same size. So
* when adjusting the cache size following a cache miss, its simply
* a matter of choosing a single page to evict. In our model, we
* have variable sized cache blocks (rangeing from 512 bytes to
- * 128K bytes). We therefor choose a set of blocks to evict to make
+ * 128K bytes). We therefore choose a set of blocks to evict to make
* space for a cache miss that approximates as closely as possible
* the space used by the new block.
*
@@ -77,7 +77,7 @@
* ways: 1) via a hash table lookup using the DVA as a key,
* or 2) via one of the ARC lists. The arc_read() interface
* uses method 1, while the internal arc algorithms for
- * adjusting the cache use method 2. We therefor provide two
+ * adjusting the cache use method 2. We therefore provide two
* types of locks: 1) the hash table lock array, and 2) the
* arc list locks.
*
@@ -385,7 +385,7 @@
#define ARCSTAT(stat) (arc_stats.stat.value.ui64)
#define ARCSTAT_INCR(stat, val) \
- atomic_add_64(&arc_stats.stat.value.ui64, (val));
+ atomic_add_64(&arc_stats.stat.value.ui64, (val))
#define ARCSTAT_BUMP(stat) ARCSTAT_INCR(stat, 1)
#define ARCSTAT_BUMPDOWN(stat) ARCSTAT_INCR(stat, -1)
@@ -613,9 +613,7 @@
#define l2arc_writes_sent ARCSTAT(arcstat_l2_writes_sent)
#define l2arc_writes_done ARCSTAT(arcstat_l2_writes_done)
-/*
- * L2ARC Performance Tunables
- */
+/* L2ARC Performance Tunables */
uint64_t l2arc_write_max = L2ARC_WRITE_SIZE; /* default max write size */
uint64_t l2arc_write_boost = L2ARC_WRITE_SIZE; /* extra write during warmup */
uint64_t l2arc_headroom = L2ARC_HEADROOM; /* number of dev writes */
@@ -3628,7 +3626,7 @@
/*
* Writes will, almost always, require additional memory allocations
- * in order to compress/encrypt/etc the data. We therefor need to
+ * in order to compress/encrypt/etc the data. We therefore need to
* make sure that there is sufficient available memory for this.
*/
if (error = arc_memory_throttle(reserve, anon_size, txg))
--- a/usr/src/uts/common/fs/zfs/bptree.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/bptree.c Tue Jun 11 09:13:33 2013 -0800
@@ -43,7 +43,7 @@
* dsl_scan_sync. This allows the delete operation to finish without traversing
* all the dataset's blocks.
*
- * Note that while bt_begin and bt_end are only ever incremented in this code
+ * Note that while bt_begin and bt_end are only ever incremented in this code,
* they are effectively reset to 0 every time the entire bptree is freed because
* the bptree's object is destroyed and re-created.
*/
--- a/usr/src/uts/common/fs/zfs/dnode.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/dnode.c Tue Jun 11 09:13:33 2013 -0800
@@ -1803,14 +1803,16 @@
}
/*
- * This function scans a block at the indicated "level" looking for
- * a hole or data (depending on 'flags'). If level > 0, then we are
- * scanning an indirect block looking at its pointers. If level == 0,
- * then we are looking at a block of dnodes. If we don't find what we
- * are looking for in the block, we return ESRCH. Otherwise, return
- * with *offset pointing to the beginning (if searching forwards) or
- * end (if searching backwards) of the range covered by the block
- * pointer we matched on (or dnode).
+ * Scans a block at the indicated "level" looking for a hole or data,
+ * depending on 'flags'.
+ *
+ * If level > 0, then we are scanning an indirect block looking at its
+ * pointers. If level == 0, then we are looking at a block of dnodes.
+ *
+ * If we don't find what we are looking for in the block, we return ESRCH.
+ * Otherwise, return with *offset pointing to the beginning (if searching
+ * forwards) or end (if searching backwards) of the range covered by the
+ * block pointer we matched on (or dnode).
*
* The basic search algorithm used below by dnode_next_offset() is to
* use this function to search up the block tree (widen the search) until
--- a/usr/src/uts/common/fs/zfs/dnode_sync.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/dnode_sync.c Tue Jun 11 09:13:33 2013 -0800
@@ -302,7 +302,7 @@
}
/*
- * free_range: Traverse the indicated range of the provided file
+ * Traverse the indicated range of the provided file
* and "free" all the blocks contained there.
*/
static void
@@ -370,7 +370,7 @@
}
/*
- * Try to kick all the dnodes dbufs out of the cache...
+ * Try to kick all the dnode's dbufs out of the cache...
*/
void
dnode_evict_dbufs(dnode_t *dn)
--- a/usr/src/uts/common/fs/zfs/dsl_prop.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/dsl_prop.c Tue Jun 11 09:13:33 2013 -0800
@@ -380,7 +380,7 @@
/*
* Unregister this callback. Return 0 on success, ENOENT if ddname is
- * invalid, ENOMSG if no matching callback registered.
+ * invalid, or ENOMSG if no matching callback registered.
*/
int
dsl_prop_unregister(dsl_dataset_t *ds, const char *propname,
--- a/usr/src/uts/common/fs/zfs/sa.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sa.c Tue Jun 11 09:13:33 2013 -0800
@@ -111,6 +111,7 @@
* location.
*
* Byteswap implications:
+ *
* Since the SA attributes are not entirely self describing we can't do
* the normal byteswap processing. The special ZAP layout attribute and
* attribute registration attributes define the byteswap function and the
@@ -189,7 +190,6 @@
};
/*
- * ZPL legacy layout
* This is only used for objects of type DMU_OT_ZNODE
*/
sa_attr_type_t sa_legacy_zpl_layout[] = {
@@ -199,7 +199,6 @@
/*
* Special dummy layout used for buffers with no attributes.
*/
-
sa_attr_type_t sa_dummy_zpl_layout[] = { 0 };
static int sa_legacy_attr_count = 16;
--- a/usr/src/uts/common/fs/zfs/spa.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/spa.c Tue Jun 11 09:13:33 2013 -0800
@@ -4516,6 +4516,7 @@
/*
* Detach a device from a mirror or replacing vdev.
+ *
* If 'replace_done' is specified, only detach if the parent
* is a replacing vdev.
*/
@@ -5170,11 +5171,9 @@
* the spa_vdev_config_[enter/exit] functions which allow us to
* grab and release the spa_config_lock while still holding the namespace
* lock. During each step the configuration is synced out.
- */
-
-/*
- * Remove a device from the pool. Currently, this supports removing only hot
- * spares, slogs, and level 2 ARC devices.
+ *
+ * Currently, this supports removing only hot spares, slogs, and level 2 ARC
+ * devices.
*/
int
spa_vdev_remove(spa_t *spa, uint64_t guid, boolean_t unspare)
@@ -5284,7 +5283,7 @@
/*
* Find any device that's done replacing, or a vdev marked 'unspare' that's
- * current spared, so we can detach it.
+ * currently spared, so we can detach it.
*/
static vdev_t *
spa_vdev_resilver_done_hunt(vdev_t *vd)
--- a/usr/src/uts/common/fs/zfs/spa_config.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/spa_config.c Tue Jun 11 09:13:33 2013 -0800
@@ -317,6 +317,7 @@
/*
* Generate the pool's configuration based on the current in-core state.
+ *
* We infer whether to generate a complete config or just one top-level config
* based on whether vd is the root vdev.
*/
--- a/usr/src/uts/common/fs/zfs/spa_misc.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/spa_misc.c Tue Jun 11 09:13:33 2013 -0800
@@ -1334,7 +1334,7 @@
/*
* This is a stripped-down version of strtoull, suitable only for converting
- * lowercase hexidecimal numbers that don't overflow.
+ * lowercase hexadecimal numbers that don't overflow.
*/
uint64_t
strtonum(const char *str, char **nptr)
--- a/usr/src/uts/common/fs/zfs/sys/ddt.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/ddt.h Tue Jun 11 09:13:33 2013 -0800
@@ -63,16 +63,15 @@
*/
typedef struct ddt_key {
zio_cksum_t ddk_cksum; /* 256-bit block checksum */
- uint64_t ddk_prop; /* LSIZE, PSIZE, compression */
+ /*
+ * Encoded with logical & physical size, and compression, as follows:
+ * +-------+-------+-------+-------+-------+-------+-------+-------+
+ * | 0 | 0 | 0 | comp | PSIZE | LSIZE |
+ * +-------+-------+-------+-------+-------+-------+-------+-------+
+ */
+ uint64_t ddk_prop;
} ddt_key_t;
-/*
- * ddk_prop layout:
- *
- * +-------+-------+-------+-------+-------+-------+-------+-------+
- * | 0 | 0 | 0 | comp | PSIZE | LSIZE |
- * +-------+-------+-------+-------+-------+-------+-------+-------+
- */
#define DDK_GET_LSIZE(ddk) \
BF64_GET_SB((ddk)->ddk_prop, 0, 16, SPA_MINBLOCKSHIFT, 1)
#define DDK_SET_LSIZE(ddk, x) \
--- a/usr/src/uts/common/fs/zfs/sys/dnode.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/dnode.h Tue Jun 11 09:13:33 2013 -0800
@@ -145,9 +145,8 @@
typedef struct dnode {
/*
- * dn_struct_rwlock protects the structure of the dnode,
- * including the number of levels of indirection (dn_nlevels),
- * dn_maxblkid, and dn_next_*
+ * Protects the structure of the dnode, including the number of levels
+ * of indirection (dn_nlevels), dn_maxblkid, and dn_next_*
*/
krwlock_t dn_struct_rwlock;
--- a/usr/src/uts/common/fs/zfs/sys/dsl_pool.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/dsl_pool.h Tue Jun 11 09:13:33 2013 -0800
@@ -110,6 +110,7 @@
/*
* Protects administrative changes (properties, namespace)
+ *
* It is only held for write in syncing context. Therefore
* syncing context does not need to ever have it for read, since
* nobody else could possibly have it for write.
--- a/usr/src/uts/common/fs/zfs/sys/sa_impl.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/sa_impl.h Tue Jun 11 09:13:33 2013 -0800
@@ -150,6 +150,7 @@
/*
* header for all bonus and spill buffers.
+ *
* The header has a fixed portion with a variable number
* of "lengths" depending on the number of variable sized
* attribues which are determined by the "layout number"
@@ -158,29 +159,27 @@
#define SA_MAGIC 0x2F505A /* ZFS SA */
typedef struct sa_hdr_phys {
uint32_t sa_magic;
- uint16_t sa_layout_info; /* Encoded with hdrsize and layout number */
+ /*
+ * Encoded with hdrsize and layout number as follows:
+ * 16 10 0
+ * +--------+-------+
+ * | hdrsz |layout |
+ * +--------+-------+
+ *
+ * Bits 0-10 are the layout number
+ * Bits 11-16 are the size of the header.
+ * The hdrsize is the number * 8
+ *
+ * For example.
+ * hdrsz of 1 ==> 8 byte header
+ * 2 ==> 16 byte header
+ *
+ */
+ uint16_t sa_layout_info;
uint16_t sa_lengths[1]; /* optional sizes for variable length attrs */
/* ... Data follows the lengths. */
} sa_hdr_phys_t;
-/*
- * sa_hdr_phys -> sa_layout_info
- *
- * 16 10 0
- * +--------+-------+
- * | hdrsz |layout |
- * +--------+-------+
- *
- * Bits 0-10 are the layout number
- * Bits 11-16 are the size of the header.
- * The hdrsize is the number * 8
- *
- * For example.
- * hdrsz of 1 ==> 8 byte header
- * 2 ==> 16 byte header
- *
- */
-
#define SA_HDR_LAYOUT_NUM(hdr) BF32_GET(hdr->sa_layout_info, 0, 10)
#define SA_HDR_SIZE(hdr) BF32_GET_SB(hdr->sa_layout_info, 10, 6, 3, 0)
#define SA_HDR_LAYOUT_INFO_ENCODE(x, num, size) \
--- a/usr/src/uts/common/fs/zfs/sys/spa_impl.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/spa_impl.h Tue Jun 11 09:13:33 2013 -0800
@@ -239,7 +239,7 @@
kmutex_t spa_iokstat_lock; /* protects spa_iokstat_* */
struct kstat *spa_iokstat; /* kstat of io to this pool */
/*
- * spa_refcnt & spa_config_lock must be the last elements
+ * spa_refcount & spa_config_lock must be the last elements
* because refcount_t changes size based on compilation options.
* In order for the MDB module to function correctly, the other
* fields must remain in the same location.
--- a/usr/src/uts/common/fs/zfs/sys/space_map.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/space_map.h Tue Jun 11 09:13:33 2013 -0800
@@ -94,7 +94,6 @@
* 63 62 60 59 50 49 0
*
*
- *
* non-debug entry
*
* 1 47 1 15
--- a/usr/src/uts/common/fs/zfs/sys/unique.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/unique.h Tue Jun 11 09:13:33 2013 -0800
@@ -26,8 +26,6 @@
#ifndef _SYS_UNIQUE_H
#define _SYS_UNIQUE_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#include <sys/zfs_context.h>
#ifdef __cplusplus
@@ -42,7 +40,7 @@
/*
* Return a new unique value (which will not be uniquified against until
- * it is unique_insert()-ed.
+ * it is unique_insert()-ed).
*/
uint64_t unique_create(void);
--- a/usr/src/uts/common/fs/zfs/sys/vdev_impl.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/vdev_impl.h Tue Jun 11 09:13:33 2013 -0800
@@ -245,12 +245,13 @@
#define VDD_METASLAB 0x01
#define VDD_DTL 0x02
+/* Offset of embedded boot loader region on each label */
+#define VDEV_BOOT_OFFSET (2 * sizeof (vdev_label_t))
/*
- * Size and offset of embedded boot loader region on each label.
+ * Size of embedded boot loader region on each label.
* The total size of the first two labels plus the boot area is 4MB.
*/
-#define VDEV_BOOT_OFFSET (2 * sizeof (vdev_label_t))
-#define VDEV_BOOT_SIZE (7ULL << 19) /* 3.5M */
+#define VDEV_BOOT_SIZE (7ULL << 19) /* 3.5M */
/*
* Size of label regions at the start and end of each leaf device.
@@ -317,8 +318,9 @@
extern void vdev_set_min_asize(vdev_t *vd);
/*
- * zdb uses this tunable, so it must be declared here to make lint happy.
+ * Global variables
*/
+/* zdb uses this tunable, so it must be declared here to make lint happy. */
extern int zfs_vdev_cache_size;
/*
--- a/usr/src/uts/common/fs/zfs/sys/zap.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/zap.h Tue Jun 11 09:13:33 2013 -0800
@@ -86,18 +86,22 @@
#endif
/*
- * The matchtype specifies which entry will be accessed.
- * MT_EXACT: only find an exact match (non-normalized)
- * MT_FIRST: find the "first" normalized (case and Unicode
- * form) match; the designated "first" match will not change as long
- * as the set of entries with this normalization doesn't change
- * MT_BEST: if there is an exact match, find that, otherwise find the
- * first normalized match
+ * Specifies matching criteria for ZAP lookups.
*/
typedef enum matchtype
{
+ /* Only find an exact match (non-normalized) */
MT_EXACT,
+ /*
+ * If there is an exact match, find that, otherwise find the
+ * first normalized match.
+ */
MT_BEST,
+ /*
+ * Find the "first" normalized (case and Unicode form) match;
+ * the designated "first" match will not change as long as the
+ * set of entries with this normalization doesn't change.
+ */
MT_FIRST
} matchtype_t;
@@ -174,16 +178,21 @@
* call will fail and return EINVAL.
*
* If 'integer_size' is equal to or larger than the attribute's integer
- * size, the call will succeed and return 0. * When converting to a
- * larger integer size, the integers will be treated as unsigned (ie. no
- * sign-extension will be performed).
+ * size, the call will succeed and return 0.
+ *
+ * When converting to a larger integer size, the integers will be treated as
+ * unsigned (ie. no sign-extension will be performed).
*
* 'num_integers' is the length (in integers) of 'buf'.
*
* If the attribute is longer than the buffer, as many integers as will
* fit will be transferred to 'buf'. If the entire attribute was not
* transferred, the call will return EOVERFLOW.
- *
+ */
+int zap_lookup(objset_t *ds, uint64_t zapobj, const char *name,
+ uint64_t integer_size, uint64_t num_integers, void *buf);
+
+/*
* If rn_len is nonzero, realname will be set to the name of the found
* entry (which may be different from the requested name if matchtype is
* not MT_EXACT).
@@ -191,8 +200,6 @@
* If normalization_conflictp is not NULL, it will be set if there is
* another name with the same case/unicode normalized form.
*/
-int zap_lookup(objset_t *ds, uint64_t zapobj, const char *name,
- uint64_t integer_size, uint64_t num_integers, void *buf);
int zap_lookup_norm(objset_t *ds, uint64_t zapobj, const char *name,
uint64_t integer_size, uint64_t num_integers, void *buf,
matchtype_t mt, char *realname, int rn_len,
--- a/usr/src/uts/common/fs/zfs/sys/zap_leaf.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/zap_leaf.h Tue Jun 11 09:13:33 2013 -0800
@@ -101,6 +101,7 @@
*/
typedef struct zap_leaf_phys {
struct zap_leaf_header {
+ /* Public to ZAP */
uint64_t lh_block_type; /* ZBT_LEAF */
uint64_t lh_pad1;
uint64_t lh_prefix; /* hash prefix of this leaf */
@@ -109,8 +110,7 @@
uint16_t lh_nentries; /* number of entries */
uint16_t lh_prefix_len; /* num bits used to id this */
-/* above is accessable to zap, below is zap_leaf private */
-
+ /* Private to zap_leaf */
uint16_t lh_freelist; /* chunk head of free list */
uint8_t lh_flags; /* ZLF_* flags */
uint8_t lh_pad2[11];
@@ -161,13 +161,13 @@
typedef struct zap_entry_handle {
- /* below is set by zap_leaf.c and is public to zap.c */
+ /* Set by zap_leaf and public to ZAP */
uint64_t zeh_num_integers;
uint64_t zeh_hash;
uint32_t zeh_cd;
uint8_t zeh_integer_size;
- /* below is private to zap_leaf.c */
+ /* Private to zap_leaf */
uint16_t zeh_fakechunk;
uint16_t *zeh_chunkp;
zap_leaf_t *zeh_leaf;
@@ -202,7 +202,7 @@
/*
* Replace the value of an existing entry.
*
- * zap_entry_update may fail if it runs out of space (ENOSPC).
+ * May fail if it runs out of space (ENOSPC).
*/
extern int zap_entry_update(zap_entry_handle_t *zeh,
uint8_t integer_size, uint64_t num_integers, const void *buf);
@@ -221,10 +221,7 @@
uint8_t integer_size, uint64_t num_integers, const void *buf,
zap_entry_handle_t *zeh);
-/*
- * Return true if there are additional entries with the same normalized
- * form.
- */
+/* Determine whether there is another entry with the same normalized form. */
extern boolean_t zap_entry_normalization_conflict(zap_entry_handle_t *zeh,
struct zap_name *zn, const char *name, struct zap *zap);
--- a/usr/src/uts/common/fs/zfs/sys/zfs_acl.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/zfs_acl.h Tue Jun 11 09:13:33 2013 -0800
@@ -46,7 +46,8 @@
#define ZFS_ACL_VERSION ZFS_ACL_VERSION_FUID
/*
- * ZFS ACLs are store in various forms.
+ * ZFS ACLs (Access Control Lists) are stored in various forms.
+ *
* Files created with ACL version ZFS_ACL_VERSION_INITIAL
* will all be created with fixed length ACEs of type
* zfs_oldace_t.
@@ -136,8 +137,8 @@
size_t (*ace_size)(void *acep); /* how big is this ace */
size_t (*ace_abstract_size)(void); /* sizeof abstract entry */
int (*ace_mask_off)(void); /* off of access mask in ace */
+ /* ptr to data if any */
int (*ace_data)(void *acep, void **datap);
- /* ptr to data if any */
} acl_ops_t;
/*
--- a/usr/src/uts/common/fs/zfs/sys/zfs_rlock.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/zfs_rlock.h Tue Jun 11 09:13:33 2013 -0800
@@ -26,8 +26,6 @@
#ifndef _SYS_FS_ZFS_RLOCK_H
#define _SYS_FS_ZFS_RLOCK_H
-#pragma ident "%Z%%M% %I% %E% SMI"
-
#ifdef __cplusplus
extern "C" {
#endif
@@ -57,16 +55,14 @@
} rl_t;
/*
- * Lock a range (offset, length) as either shared (READER)
- * or exclusive (WRITER or APPEND). APPEND is a special type that
- * is converted to WRITER that specified to lock from the start of the
- * end of file. zfs_range_lock() returns the range lock structure.
+ * Lock a range (offset, length) as either shared (RL_READER)
+ * or exclusive (RL_WRITER or RL_APPEND). RL_APPEND is a special type that
+ * is converted to RL_WRITER that specified to lock from the start of the
+ * end of file. Returns the range lock structure.
*/
rl_t *zfs_range_lock(znode_t *zp, uint64_t off, uint64_t len, rl_type_t type);
-/*
- * Unlock range and destroy range lock structure.
- */
+/* Unlock range and destroy range lock structure. */
void zfs_range_unlock(rl_t *rl);
/*
@@ -76,7 +72,8 @@
void zfs_range_reduce(rl_t *rl, uint64_t off, uint64_t len);
/*
- * AVL comparison function used to compare range locks
+ * AVL comparison function used to order range locks
+ * Locks are ordered on the start offset of the range.
*/
int zfs_range_compare(const void *arg1, const void *arg2);
--- a/usr/src/uts/common/fs/zfs/sys/zfs_znode.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/zfs_znode.h Tue Jun 11 09:13:33 2013 -0800
@@ -138,8 +138,9 @@
#define ZFS_MAX_BLOCKSIZE (SPA_MAXBLOCKSIZE)
-/* Path component length */
/*
+ * Path component length
+ *
* The generic fs code uses MAXNAMELEN to represent
* what the largest component length is. Unfortunately,
* this length includes the terminating NULL. ZFS needs
@@ -234,11 +235,7 @@
#define ZTOV(ZP) ((ZP)->z_vnode)
#define VTOZ(VP) ((znode_t *)(VP)->v_data)
-/*
- * ZFS_ENTER() is called on entry to each ZFS vnode and vfs operation.
- * ZFS_EXIT() must be called before exitting the vop.
- * ZFS_VERIFY_ZP() verifies the znode is valid.
- */
+/* Called on entry to each ZFS vnode and vfs operation */
#define ZFS_ENTER(zfsvfs) \
{ \
rrw_enter_read(&(zfsvfs)->z_teardown_lock, FTAG); \
@@ -248,8 +245,10 @@
} \
}
+/* Must be called before exiting the vop */
#define ZFS_EXIT(zfsvfs) rrw_exit(&(zfsvfs)->z_teardown_lock, FTAG)
+/* Verifies the znode is valid */
#define ZFS_VERIFY_ZP(zp) \
if ((zp)->z_sa_hdl == NULL) { \
ZFS_EXIT((zp)->z_zfsvfs); \
@@ -269,15 +268,14 @@
#define ZFS_OBJ_HOLD_EXIT(zfsvfs, obj_num) \
mutex_exit(ZFS_OBJ_MUTEX((zfsvfs), (obj_num)))
-/*
- * Macros to encode/decode ZFS stored time values from/to struct timespec
- */
+/* Encode ZFS stored time values from a struct timespec */
#define ZFS_TIME_ENCODE(tp, stmp) \
{ \
(stmp)[0] = (uint64_t)(tp)->tv_sec; \
(stmp)[1] = (uint64_t)(tp)->tv_nsec; \
}
+/* Decode ZFS stored time values to a struct timespec */
#define ZFS_TIME_DECODE(tp, stmp) \
{ \
(tp)->tv_sec = (time_t)(stmp)[0]; \
--- a/usr/src/uts/common/fs/zfs/sys/zil.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/zil.h Tue Jun 11 09:13:33 2013 -0800
@@ -242,6 +242,12 @@
* information needed for replaying the create. If the
* file doesn't have any actual ACEs then the lr_aclcnt
* would be zero.
+ *
+ * After lr_acl_flags, there are a lr_acl_bytes number of variable sized ace's.
+ * If create is also setting xvattr's, then acl data follows xvattr.
+ * If ACE FUIDs are needed then they will follow the xvattr_t. Following
+ * the FUIDs will be the domain table information. The FUIDs for the owner
+ * and group will be in lr_create. Name follows ACL data.
*/
typedef struct {
lr_create_t lr_create; /* common create portion */
@@ -250,13 +256,6 @@
uint64_t lr_fuidcnt; /* number of real fuids */
uint64_t lr_acl_bytes; /* number of bytes in ACL */
uint64_t lr_acl_flags; /* ACL flags */
- /* lr_acl_bytes number of variable sized ace's follows */
- /* if create is also setting xvattr's, then acl data follows xvattr */
- /* if ACE FUIDs are needed then they will follow the xvattr_t */
- /* Following the FUIDs will be the domain table information. */
- /* The FUIDs for the owner and group will be in the lr_create */
- /* portion of the record. */
- /* name follows ACL data */
} lr_acl_create_t;
typedef struct {
--- a/usr/src/uts/common/fs/zfs/sys/zio_compress.h Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/sys/zio_compress.h Tue Jun 11 09:13:33 2013 -0800
@@ -36,11 +36,10 @@
extern "C" {
#endif
-/*
- * Common signature for all zio compress/decompress functions.
- */
+/* Common signature for all zio compress functions. */
typedef size_t zio_compress_func_t(void *src, void *dst,
size_t s_len, size_t d_len, int);
+/* Common signature for all zio decompress functions. */
typedef int zio_decompress_func_t(void *src, void *dst,
size_t s_len, size_t d_len, int);
--- a/usr/src/uts/common/fs/zfs/txg.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/txg.c Tue Jun 11 09:13:33 2013 -0800
@@ -567,8 +567,8 @@
/*
* Delay this thread by delay nanoseconds if we are still in the open
- * transaction group and there is already a waiting txg quiesing or quiesced.
- * Abort the delay if this txg stalls or enters the quiesing state.
+ * transaction group and there is already a waiting txg quiescing or quiesced.
+ * Abort the delay if this txg stalls or enters the quiescing state.
*/
void
txg_delay(dsl_pool_t *dp, uint64_t txg, hrtime_t delay, hrtime_t resolution)
@@ -576,7 +576,7 @@
tx_state_t *tx = &dp->dp_tx;
hrtime_t start = gethrtime();
- /* don't delay if this txg could transition to quiesing immediately */
+ /* don't delay if this txg could transition to quiescing immediately */
if (tx->tx_open_txg > txg ||
tx->tx_syncing_txg == txg-1 || tx->tx_synced_txg == txg-1)
return;
--- a/usr/src/uts/common/fs/zfs/vdev.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/vdev.c Tue Jun 11 09:13:33 2013 -0800
@@ -956,9 +956,11 @@
}
/*
- * Determine whether this device is accessible by reading and writing
- * to several known locations: the pad regions of each vdev label
- * but the first (which we leave alone in case it contains a VTOC).
+ * Determine whether this device is accessible.
+ *
+ * Read and write to several known locations: the pad regions of each
+ * vdev label but the first, which we leave alone in case it contains
+ * a VTOC.
*/
zio_t *
vdev_probe(vdev_t *vd, zio_t *zio)
@@ -2179,10 +2181,12 @@
}
/*
- * Online the given vdev. If 'unspare' is set, it implies two things. First,
- * any attached spare device should be detached when the device finishes
- * resilvering. Second, the online should be treated like a 'test' online case,
- * so no FMA events are generated if the device fails to open.
+ * Online the given vdev.
+ *
+ * If 'ZFS_ONLINE_UNSPARE' is set, it implies two things. First, any attached
+ * spare device should be detached when the device finishes resilvering.
+ * Second, the online should be treated like a 'test' online case, so no FMA
+ * events are generated if the device fails to open.
*/
int
vdev_online(spa_t *spa, uint64_t guid, uint64_t flags, vdev_state_t *newstate)
--- a/usr/src/uts/common/fs/zfs/vdev_queue.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/vdev_queue.c Tue Jun 11 09:13:33 2013 -0800
@@ -36,13 +36,14 @@
/*
* These tunables are for performance analysis.
*/
+
+/* The maximum number of I/Os concurrently pending to each device. */
+int zfs_vdev_max_pending = 10;
+
/*
- * zfs_vdev_max_pending is the maximum number of i/os concurrently
- * pending to each device. zfs_vdev_min_pending is the initial number
- * of i/os pending to each device (before it starts ramping up to
- * max_pending).
+ * The initial number of I/Os pending to each device, before it starts ramping
+ * up to zfs_vdev_max_pending.
*/
-int zfs_vdev_max_pending = 10;
int zfs_vdev_min_pending = 4;
/*
--- a/usr/src/uts/common/fs/zfs/vdev_raidz.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/vdev_raidz.c Tue Jun 11 09:13:33 2013 -0800
@@ -60,6 +60,7 @@
* o addition (+) is represented by a bitwise XOR
* o subtraction (-) is therefore identical to addition: A + B = A - B
* o multiplication of A by 2 is defined by the following bitwise expression:
+ *
* (A * 2)_7 = A_6
* (A * 2)_6 = A_5
* (A * 2)_5 = A_4
@@ -118,7 +119,7 @@
uint64_t rm_missingparity; /* Count of missing parity devices */
uint64_t rm_firstdatacol; /* First data column/parity count */
uint64_t rm_nskip; /* Skipped sectors for padding */
- uint64_t rm_skipstart; /* Column index of padding start */
+ uint64_t rm_skipstart; /* Column index of padding start */
void *rm_datacopy; /* rm_asize-buffer of copied data */
uintptr_t rm_reports; /* # of referencing checksum reports */
uint8_t rm_freed; /* map no longer has referencing ZIO */
@@ -158,10 +159,7 @@
*/
int vdev_raidz_default_to_general;
-/*
- * These two tables represent powers and logs of 2 in the Galois field defined
- * above. These values were computed by repeatedly multiplying by 2 as above.
- */
+/* Powers of 2 in the Galois field defined above. */
static const uint8_t vdev_raidz_pow2[256] = {
0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80,
0x1d, 0x3a, 0x74, 0xe8, 0xcd, 0x87, 0x13, 0x26,
@@ -196,6 +194,7 @@
0x2c, 0x58, 0xb0, 0x7d, 0xfa, 0xe9, 0xcf, 0x83,
0x1b, 0x36, 0x6c, 0xd8, 0xad, 0x47, 0x8e, 0x01
};
+/* Logs of 2 in the Galois field defined above. */
static const uint8_t vdev_raidz_log2[256] = {
0x00, 0x00, 0x01, 0x19, 0x02, 0x32, 0x1a, 0xc6,
0x03, 0xdf, 0x33, 0xee, 0x1b, 0x68, 0xc7, 0x4b,
--- a/usr/src/uts/common/fs/zfs/zfs_acl.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_acl.c Tue Jun 11 09:13:33 2013 -0800
@@ -1362,7 +1362,8 @@
zacep = (void *)((uintptr_t)zacep + abstract_size);
new_count++;
new_bytes += abstract_size;
- } if (masks.deny1) {
+ }
+ if (masks.deny1) {
zfs_set_ace(aclp, zacep, masks.deny1, DENY, -1, ACE_OWNER);
zacep = (void *)((uintptr_t)zacep + abstract_size);
new_count++;
@@ -1766,7 +1767,7 @@
}
/*
- * Retrieve a files ACL
+ * Retrieve a file's ACL
*/
int
zfs_getacl(znode_t *zp, vsecattr_t *vsecp, boolean_t skipaclchk, cred_t *cr)
@@ -1921,7 +1922,7 @@
}
/*
- * Set a files ACL
+ * Set a file's ACL
*/
int
zfs_setacl(znode_t *zp, vsecattr_t *vsecp, boolean_t skipaclchk, cred_t *cr)
@@ -2342,6 +2343,7 @@
/*
* Determine whether Access should be granted/denied.
+ *
* The least priv subsytem is always consulted as a basic privilege
* can define any form of access.
*/
@@ -2537,7 +2539,6 @@
* Determine whether Access should be granted/deny, without
* consulting least priv subsystem.
*
- *
* The following chart is the recommended NFSv4 enforcement for
* ability to delete an object.
*
--- a/usr/src/uts/common/fs/zfs/zfs_ctldir.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_ctldir.c Tue Jun 11 09:13:33 2013 -0800
@@ -1051,6 +1051,7 @@
/*
* pvp is the '.zfs' directory (zfsctl_node_t).
+ *
* Creates vp, which is '.zfs/snapshot' (zfsctl_snapdir_t).
*
* This function is the callback to create a GFS vnode for '.zfs/snapshot'
--- a/usr/src/uts/common/fs/zfs/zfs_ioctl.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_ioctl.c Tue Jun 11 09:13:33 2013 -0800
@@ -323,9 +323,7 @@
}
/*
- * zfs_earlier_version
- *
- * Return non-zero if the spa version is less than requested version.
+ * Return non-zero if the spa version is less than requested version.
*/
static int
zfs_earlier_version(const char *name, int version)
@@ -343,8 +341,6 @@
}
/*
- * zpl_earlier_version
- *
* Return TRUE if the ZPL version is less than requested version.
*/
static boolean_t
@@ -2955,10 +2951,10 @@
/*
* inputs:
+ * os parent objset pointer (NULL if root fs)
+ * fuids_ok fuids allowed in this version of the spa?
+ * sa_ok SAs allowed in this version of the spa?
* createprops list of properties requested by creator
- * default_zplver zpl version to use if unspecified in createprops
- * fuids_ok fuids allowed in this version of the spa?
- * os parent objset pointer (NULL if root fs)
*
* outputs:
* zplprops values for the zplprops we attach to the master node object
--- a/usr/src/uts/common/fs/zfs/zfs_log.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_log.c Tue Jun 11 09:13:33 2013 -0800
@@ -211,9 +211,8 @@
}
/*
- * zfs_log_create() is used to handle TX_CREATE, TX_CREATE_ATTR, TX_MKDIR,
- * TX_MKDIR_ATTR and TX_MKXATTR
- * transactions.
+ * Handles TX_CREATE, TX_CREATE_ATTR, TX_MKDIR, TX_MKDIR_ATTR and
+ * TK_MKXATTR transactions.
*
* TX_CREATE and TX_MKDIR are standard creates, but they may have FUID
* domain information appended prior to the name. In this case the
@@ -340,7 +339,7 @@
}
/*
- * zfs_log_remove() handles both TX_REMOVE and TX_RMDIR transactions.
+ * Handles both TX_REMOVE and TX_RMDIR transactions.
*/
void
zfs_log_remove(zilog_t *zilog, dmu_tx_t *tx, uint64_t txtype,
@@ -364,7 +363,7 @@
}
/*
- * zfs_log_link() handles TX_LINK transactions.
+ * Handles TX_LINK transactions.
*/
void
zfs_log_link(zilog_t *zilog, dmu_tx_t *tx, uint64_t txtype,
@@ -387,7 +386,7 @@
}
/*
- * zfs_log_symlink() handles TX_SYMLINK transactions.
+ * Handles TX_SYMLINK transactions.
*/
void
zfs_log_symlink(zilog_t *zilog, dmu_tx_t *tx, uint64_t txtype,
@@ -419,7 +418,7 @@
}
/*
- * zfs_log_rename() handles TX_RENAME transactions.
+ * Handles TX_RENAME transactions.
*/
void
zfs_log_rename(zilog_t *zilog, dmu_tx_t *tx, uint64_t txtype,
@@ -445,7 +444,7 @@
}
/*
- * zfs_log_write() handles TX_WRITE transactions.
+ * Handles TX_WRITE transactions.
*/
ssize_t zfs_immediate_write_sz = 32768;
@@ -524,7 +523,7 @@
}
/*
- * zfs_log_truncate() handles TX_TRUNCATE transactions.
+ * Handles TX_TRUNCATE transactions.
*/
void
zfs_log_truncate(zilog_t *zilog, dmu_tx_t *tx, int txtype,
@@ -547,7 +546,7 @@
}
/*
- * zfs_log_setattr() handles TX_SETATTR transactions.
+ * Handles TX_SETATTR transactions.
*/
void
zfs_log_setattr(zilog_t *zilog, dmu_tx_t *tx, int txtype,
@@ -609,7 +608,7 @@
}
/*
- * zfs_log_acl() handles TX_ACL transactions.
+ * Handles TX_ACL transactions.
*/
void
zfs_log_acl(zilog_t *zilog, dmu_tx_t *tx, znode_t *zp,
--- a/usr/src/uts/common/fs/zfs/zfs_rlock.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_rlock.c Tue Jun 11 09:13:33 2013 -0800
@@ -28,7 +28,7 @@
/*
* This file contains the code to implement file range locking in
- * ZFS, although there isn't much specific to ZFS (all that comes to mind
+ * ZFS, although there isn't much specific to ZFS (all that comes to mind is
* support for growing the blocksize).
*
* Interface
--- a/usr/src/uts/common/fs/zfs/zfs_sa.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_sa.c Tue Jun 11 09:13:33 2013 -0800
@@ -187,7 +187,7 @@
/*
* I'm not convinced we should do any of this upgrade.
* since the SA code can read both old/new znode formats
- * with probably little to know performance difference.
+ * with probably little to no performance difference.
*
* All new files will be created with the new format.
*/
--- a/usr/src/uts/common/fs/zfs/zfs_vfsops.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_vfsops.c Tue Jun 11 09:13:33 2013 -0800
@@ -1348,13 +1348,12 @@
}
/*
- * zfs_check_global_label:
- * Check that the hex label string is appropriate for the dataset
- * being mounted into the global_zone proper.
+ * Check that the hex label string is appropriate for the dataset being
+ * mounted into the global_zone proper.
*
- * Return an error if the hex label string is not default or
- * admin_low/admin_high. For admin_low labels, the corresponding
- * dataset must be readonly.
+ * Return an error if the hex label string is not default or
+ * admin_low/admin_high. For admin_low labels, the corresponding
+ * dataset must be readonly.
*/
int
zfs_check_global_label(const char *dsname, const char *hexsl)
@@ -1376,15 +1375,12 @@
}
/*
- * zfs_mount_label_policy:
- * Determine whether the mount is allowed according to MAC check.
- * by comparing (where appropriate) label of the dataset against
- * the label of the zone being mounted into. If the dataset has
- * no label, create one.
+ * Determine whether the mount is allowed according to MAC check.
+ * by comparing (where appropriate) label of the dataset against
+ * the label of the zone being mounted into. If the dataset has
+ * no label, create one.
*
- * Returns:
- * 0 : access allowed
- * >0 : error code, such as EACCES
+ * Returns 0 if access allowed, error otherwise (e.g. EACCES)
*/
static int
zfs_mount_label_policy(vfs_t *vfsp, char *osname)
--- a/usr/src/uts/common/fs/zfs/zfs_vnops.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_vnops.c Tue Jun 11 09:13:33 2013 -0800
@@ -91,11 +91,11 @@
* The ordering of events is important to avoid deadlocks and references
* to freed memory. The example below illustrates the following Big Rules:
*
- * (1) A check must be made in each zfs thread for a mounted file system.
+ * (1) A check must be made in each zfs thread for a mounted file system.
* This is done avoiding races using ZFS_ENTER(zfsvfs).
- * A ZFS_EXIT(zfsvfs) is needed before all returns. Any znodes
- * must be checked with ZFS_VERIFY_ZP(zp). Both of these macros
- * can return EIO from the calling function.
+ * A ZFS_EXIT(zfsvfs) is needed before all returns. Any znodes
+ * must be checked with ZFS_VERIFY_ZP(zp). Both of these macros
+ * can return EIO from the calling function.
*
* (2) VN_RELE() should always be the last thing except for zil_commit()
* (if necessary) and ZFS_EXIT(). This is for 3 reasons:
@@ -127,7 +127,7 @@
* (5) If the operation succeeded, generate the intent log entry for it
* before dropping locks. This ensures that the ordering of events
* in the intent log matches the order in which they actually occurred.
- * During ZIL replay the zfs_log_* functions will update the sequence
+ * During ZIL replay the zfs_log_* functions will update the sequence
* number to indicate the zil transaction has replayed.
*
* (6) At the end of each vnode op, the DMU tx must always commit,
@@ -384,7 +384,7 @@
* else we default from the dmu buffer.
*
* NOTE: We will always "break up" the IO into PAGESIZE uiomoves when
- * the file is memory mapped.
+ * the file is memory mapped.
*/
static int
mappedread(vnode_t *vp, int nbytes, uio_t *uio)
@@ -433,8 +433,7 @@
*
* OUT: uio - updated offset and range, buffer filled.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Side Effects:
* vp - atime updated if byte count > 0
@@ -570,14 +569,14 @@
* IN: vp - vnode of file to be written to.
* uio - structure supplying write location, range info,
* and data buffer.
- * ioflag - FAPPEND flag set if in append mode.
+ * ioflag - FAPPEND, FSYNC, and/or FDSYNC. FAPPEND is
+ * set if in append mode.
* cr - credentials of caller.
* ct - caller context (NFS/CIFS fem monitor only)
*
* OUT: uio - updated offset and range.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* vp - ctime|mtime updated if byte count > 0
@@ -1148,8 +1147,7 @@
*
* OUT: vpp - vnode of located entry, NULL if not found.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* NA
@@ -1290,8 +1288,7 @@
*
* OUT: vpp - vnode of created or trunc'd entry.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* dvp - ctime|mtime updated if new entry created
@@ -1541,8 +1538,7 @@
* ct - caller context
* flags - case flags
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* dvp - ctime|mtime
@@ -1772,12 +1768,12 @@
* vap - attributes of new directory.
* cr - credentials of caller.
* ct - caller context
+ * flags - case flags
* vsecp - ACL to be set
*
* OUT: vpp - vnode of created directory.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* dvp - ctime|mtime updated
@@ -1957,8 +1953,7 @@
* ct - caller context
* flags - case flags
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* dvp - ctime|mtime updated
@@ -2076,7 +2071,7 @@
/*
* Read as many directory entries as will fit into the provided
* buffer from the given directory cursor position (specified in
- * the uio structure.
+ * the uio structure).
*
* IN: vp - vnode of directory to read.
* uio - structure supplying read location, range info,
@@ -2088,8 +2083,7 @@
* OUT: uio - updated offset and range, buffer filled.
* eofp - set to true if end-of-file detected.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* vp - atime updated
@@ -2408,7 +2402,7 @@
*
* OUT: vap - attribute values.
*
- * RETURN: 0 (always succeeds)
+ * RETURN: 0 (always succeeds).
*/
/* ARGSUSED */
static int
@@ -2610,8 +2604,7 @@
* cr - credentials of caller.
* ct - caller context
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* vp - ctime updated, mtime updated if size changed.
@@ -2619,7 +2612,7 @@
/* ARGSUSED */
static int
zfs_setattr(vnode_t *vp, vattr_t *vap, int flags, cred_t *cr,
- caller_context_t *ct)
+ caller_context_t *ct)
{
znode_t *zp = VTOZ(vp);
zfsvfs_t *zfsvfs = zp->z_zfsvfs;
@@ -3212,6 +3205,7 @@
if (attrzp)
VN_RELE(ZTOV(attrzp));
+
if (aclp)
zfs_acl_free(aclp);
@@ -3346,8 +3340,7 @@
* ct - caller context
* flags - case flags
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* sdvp,tdvp - ctime|mtime updated
@@ -3694,13 +3687,11 @@
* IN: dvp - Directory to contain new symbolic link.
* link - Name for new symlink entry.
* vap - Attributes of new entry.
- * target - Target path of new symlink.
* cr - credentials of caller.
* ct - caller context
* flags - case flags
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* dvp - ctime|mtime updated
@@ -3846,14 +3837,13 @@
* the symbolic path referred to by vp.
*
* IN: vp - vnode of symbolic link.
- * uoip - structure to contain the link path.
+ * uio - structure to contain the link path.
* cr - credentials of caller.
* ct - caller context
*
- * OUT: uio - structure to contain the link path.
+ * OUT: uio - structure containing the link path.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* vp - atime updated
@@ -3892,8 +3882,7 @@
* cr - credentials of caller.
* ct - caller context
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* tdvp - ctime|mtime updated
@@ -4061,8 +4050,7 @@
* OUT: offp - start of range pushed.
* lenp - len of range pushed.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* NOTE: callers must have locked the page to be pushed. On
* exit, the page (and all other pages in the kluster) must be
@@ -4184,8 +4172,7 @@
* cr - credentials of caller.
* ct - caller context.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* vp - ctime|mtime updated
@@ -4350,8 +4337,7 @@
* noffp - pointer to new file offset
* ct - caller context
*
- * RETURN: 0 if success
- * EINVAL if new offset invalid
+ * RETURN: 0 on success, EINVAL if new offset invalid.
*/
/* ARGSUSED */
static int
@@ -4487,8 +4473,7 @@
* OUT: protp - protection mode of created pages.
* pl - list of pages created.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* vp - atime updated
@@ -4496,8 +4481,8 @@
/* ARGSUSED */
static int
zfs_getpage(vnode_t *vp, offset_t off, size_t len, uint_t *protp,
- page_t *pl[], size_t plsz, struct seg *seg, caddr_t addr,
- enum seg_rw rw, cred_t *cr, caller_context_t *ct)
+ page_t *pl[], size_t plsz, struct seg *seg, caddr_t addr,
+ enum seg_rw rw, cred_t *cr, caller_context_t *ct)
{
znode_t *zp = VTOZ(vp);
zfsvfs_t *zfsvfs = zp->z_zfsvfs;
@@ -4572,15 +4557,11 @@
* Request a memory map for a section of a file. This code interacts
* with common code and the VM system as follows:
*
- * common code calls mmap(), which ends up in smmap_common()
- *
- * this calls VOP_MAP(), which takes you into (say) zfs
- *
- * zfs_map() calls as_map(), passing segvn_create() as the callback
- *
- * segvn_create() creates the new segment and calls VOP_ADDMAP()
- *
- * zfs_addmap() updates z_mapcnt
+ * - common code calls mmap(), which ends up in smmap_common()
+ * - this calls VOP_MAP(), which takes you into (say) zfs
+ * - zfs_map() calls as_map(), passing segvn_create() as the callback
+ * - segvn_create() creates the new segment and calls VOP_ADDMAP()
+ * - zfs_addmap() updates z_mapcnt
*/
/*ARGSUSED*/
static int
@@ -4722,8 +4703,7 @@
* cr - credentials of caller [UNUSED].
* ct - caller context.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure.
*
* Timestamps:
* vp - ctime|mtime updated
@@ -4938,13 +4918,14 @@
}
/*
- * Tunable, both must be a power of 2.
- *
- * zcr_blksz_min: the smallest read we may consider to loan out an arcbuf
- * zcr_blksz_max: if set to less than the file block size, allow loaning out of
- * an arcbuf for a partial block read
+ * The smallest read we may consider to loan out an arcbuf.
+ * This must be a power of 2.
*/
int zcr_blksz_min = (1 << 10); /* 1K */
+/*
+ * If set to less than the file block size, allow loaning out of an
+ * arcbuf for a partial block read. This must be a power of 2.
+ */
int zcr_blksz_max = (1 << 17); /* 128K */
/*ARGSUSED*/
@@ -5218,10 +5199,12 @@
/*
* Extended attribute directory vnode operations template
- * This template is identical to the directory vnodes
- * operation template except for restricted operations:
- * VOP_MKDIR()
- * VOP_SYMLINK()
+ *
+ * This template is identical to the directory vnodes
+ * operation template except for restricted operations:
+ * VOP_MKDIR()
+ * VOP_SYMLINK()
+ *
* Note that there are other restrictions embedded in:
* zfs_create() - restrict type to VREG
* zfs_link() - no links into/out of attribute space
--- a/usr/src/uts/common/fs/zfs/zfs_znode.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zfs_znode.c Tue Jun 11 09:13:33 2013 -0800
@@ -1006,9 +1006,8 @@
}
/*
- * zfs_xvattr_set only updates the in-core attributes
- * it is assumed the caller will be doing an sa_bulk_update
- * to push the changes out
+ * Update in-core attributes. It is assumed the caller will be doing an
+ * sa_bulk_update to push the changes out.
*/
void
zfs_xvattr_set(znode_t *zp, xvattr_t *xvap, dmu_tx_t *tx)
@@ -1447,8 +1446,7 @@
* IN: zp - znode of file to free data in.
* end - new end-of-file
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure
*/
static int
zfs_extend(znode_t *zp, uint64_t end)
@@ -1525,8 +1523,7 @@
* off - start of section to free.
* len - length of section to free.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure
*/
static int
zfs_free_range(znode_t *zp, uint64_t off, uint64_t len)
@@ -1564,8 +1561,7 @@
* IN: zp - znode of file to free data in.
* end - new end-of-file.
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure
*/
static int
zfs_trunc(znode_t *zp, uint64_t end)
@@ -1663,8 +1659,7 @@
* flag - current file open mode flags.
* log - TRUE if this action should be logged
*
- * RETURN: 0 if success
- * error code if failure
+ * RETURN: 0 on success, error code on failure
*/
int
zfs_freesp(znode_t *zp, uint64_t off, uint64_t len, int flag, boolean_t log)
--- a/usr/src/uts/common/fs/zfs/zil.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zil.c Tue Jun 11 09:13:33 2013 -0800
@@ -66,9 +66,9 @@
*/
/*
- * This global ZIL switch affects all pools
+ * Disable intent logging replay. This global ZIL switch affects all pools.
*/
-int zil_replay_disable = 0; /* disable intent logging replay */
+int zil_replay_disable = 0;
/*
* Tunable parameter for debugging or performance analysis. Setting
@@ -879,6 +879,7 @@
/*
* Define a limited set of intent log block sizes.
+ *
* These must be a multiple of 4KB. Note only the amount used (again
* aligned to 4KB) actually gets written. However, we can't always just
* allocate SPA_MAXBLOCKSIZE as the slog space could be exhausted.
--- a/usr/src/uts/common/fs/zfs/zio.c Tue Jun 11 09:12:34 2013 -0800
+++ b/usr/src/uts/common/fs/zfs/zio.c Tue Jun 11 09:13:33 2013 -0800
@@ -1185,13 +1185,16 @@
/*
* Execute the I/O pipeline until one of the following occurs:
- * (1) the I/O completes; (2) the pipeline stalls waiting for
- * dependent child I/Os; (3) the I/O issues, so we're waiting
- * for an I/O completion interrupt; (4) the I/O is delegated by
- * vdev-level caching or aggregation; (5) the I/O is deferred
- * due to vdev-level queueing; (6) the I/O is handed off to
- * another thread. In all cases, the pipeline stops whenever
- * there's no CPU work; it never burns a thread in cv_wait().
+ *
+ * (1) the I/O completes
+ * (2) the pipeline stalls waiting for dependent child I/Os
+ * (3) the I/O issues, so we're waiting for an I/O completion interrupt
+ * (4) the I/O is delegated by vdev-level caching or aggregation
+ * (5) the I/O is deferred due to vdev-level queueing
+ * (6) the I/O is handed off to another thread.
+ *
+ * In all cases, the pipeline stops whenever there's no CPU work; it never
+ * burns a thread in cv_wait().
*
* There's no locking on io_stage because there's no legitimate way
* for multiple threads to be attempting to process the same I/O.