Update zfs-events.5 with info from PSARC 2009/497

Update zfs-events.5 with info from PSARC 2009/497 regarding ereport fields.
Also updates ZIO_STAGE_* and ZIO_FLAG_* descriptions to match current source.

Reviewed by: loli10K <ezomori.nozomu@gmail.com>
Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Richard Elling <Richard.Elling@RichardElling.com>
Closes #8057
This commit is contained in:
Richard Elling 2018-11-01 15:54:55 -07:00 committed by Brian Behlendorf
parent 04a88fc00c
commit 6644e5bb6e

View File

@ -1,5 +1,6 @@
'\" te
.\" Copyright (c) 2013 by Turbo Fredriksson <turbo@bayour.com>. All rights reserved.
.\" Portions Copyright 2018 by Richard Elling
.\" The contents of this file are subject to the terms of the Common Development
.\" and Distribution License (the "License"). You may not use this file except
.\" in compliance with the License. You can obtain a copy of the license at
@ -12,7 +13,7 @@
.\" CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your
.\" own identifying information:
.\" Portions Copyright [yyyy] [name of copyright owner]
.TH ZFS-EVENTS 5 "Jun 6, 2015"
.TH ZFS-EVENTS 5 "Oct 24, 2018"
.SH NAME
zfs\-events \- Events created by the ZFS filesystem.
.SH DESCRIPTION
@ -406,7 +407,7 @@ Pool name.
.RS 12n
Failmode - \fBwait\fR, \fBcontinue\fR or \fBpanic\fR.
See
.BR pool (8)
.BR zpool (8)
(\fIfailmode\fR property) for more information.
.RE
@ -618,7 +619,8 @@ The object number for a given I/O.
\fBzio_level\fR
.ad
.RS 12n
The block level for a given I/O.
The indirect level for the block. Level 0 is the lowest level and includes
data blocks. Values > 0 indicate metadata blocks at the appropriate level.
.RE
.sp
@ -636,7 +638,9 @@ The block ID for a given I/O.
\fBzio_err\fR
.ad
.RS 12n
The errno for a failure when handling a given I/O.
The errno for a failure when handling a given I/O. The errno is compatible
with \fBerrno\fR(3) with the value for EBADE (0x34) used to indicate ZFS
checksum error.
.RE
.sp
@ -732,7 +736,7 @@ The previous state of the vdev.
\fBcksum_expected\fR
.ad
.RS 12n
The expected checksum value.
The expected checksum value for the block.
.RE
.sp
@ -741,7 +745,7 @@ The expected checksum value.
\fBcksum_actual\fR
.ad
.RS 12n
The actual/current checksum value.
The actual checksum value for an errant block.
.RE
.sp
@ -750,7 +754,8 @@ The actual/current checksum value.
\fBcksum_algorithm\fR
.ad
.RS 12n
Checksum algorithm used. See \fBzfs\fR(8) for more information on checksum algorithms available.
Checksum algorithm used. See \fBzfs\fR(8) for more information on checksum
algorithms available.
.RE
.sp
@ -759,7 +764,7 @@ Checksum algorithm used. See \fBzfs\fR(8) for more information on checksum algor
\fBcksum_byteswap\fR
.ad
.RS 12n
Checksum value is byte swapped.
Whether or not the data is byteswapped.
.RE
.sp
@ -768,7 +773,9 @@ Checksum value is byte swapped.
\fBbad_ranges\fR
.ad
.RS 12n
Checksum bad offset ranges.
[start, end) pairs of corruption offsets. Offsets are always aligned on a
64-bit boundary, and can include some gaps of non-corruption.
(See \fBbad_ranges_min_gap\fR)
.RE
.sp
@ -777,7 +784,10 @@ Checksum bad offset ranges.
\fBbad_ranges_min_gap\fR
.ad
.RS 12n
Checksum allowed minimum gap.
In order to bound the size of the \fBbad_ranges\fR array, gaps of non-corruption
less than or equal to \fBbad_ranges_min_gap\fR bytes have been merged with
adjacent corruption. Always at least 8 bytes, since corruption is detected
on a 64-bit word basis.
.RE
.sp
@ -786,7 +796,9 @@ Checksum allowed minimum gap.
\fBbad_range_sets\fR
.ad
.RS 12n
Checksum for each range the number of bits set.
This array has one element per range in \fBbad_ranges\fR. Each element contains
the count of bits in that range which were clear in the good data and set
in the bad data.
.RE
.sp
@ -795,7 +807,9 @@ Checksum for each range the number of bits set.
\fBbad_range_clears\fR
.ad
.RS 12n
Checksum for each range the number of bits cleared.
This array has one element per range in \fBbad_ranges\fR. Each element contains
the count of bits for that range which were set in the good data and clear in
the bad data.
.RE
.sp
@ -804,7 +818,12 @@ Checksum for each range the number of bits cleared.
\fBbad_set_bits\fR
.ad
.RS 12n
Checksum array of bits set.
If this field exists, it is an array of: (bad data & ~(good data)); that is,
the bits set in the bad data which are cleared in the good data. Each element
corresponds a byte whose offset is in a range in \fBbad_ranges\fR, and the
array is ordered by offset. Thus, the first element is the first byte in the
first \fBbad_ranges\fR range, and the last element is the last byte in the last
\fBbad_ranges\fR range.
.RE
.sp
@ -813,7 +832,8 @@ Checksum array of bits set.
\fBbad_cleared_bits\fR
.ad
.RS 12n
Checksum array of bits cleared.
Like \fBbad_set_bits\fR, but contains: (good data & ~(bad data)); that is,
the bits set in the good data which are cleared in the bad data.
.RE
.sp
@ -822,7 +842,12 @@ Checksum array of bits cleared.
\fBbad_set_histogram\fR
.ad
.RS 12n
Checksum histogram of set bits by bit number in a 64-bit word.
If this field exists, it is an array of counters. Each entry counts bits set
in a particular bit of a big-endian uint64 type. The first entry counts bits
set in the high-order bit of the first byte, the 9th byte, etc, and the last
entry counts bits set of the low-order bit of the 8th byte, the 16th byte, etc.
This information is useful for observing a stuck bit in a parallel data path,
such as IDE or parallel SCSI.
.RE
.sp
@ -831,7 +856,12 @@ Checksum histogram of set bits by bit number in a 64-bit word.
\fBbad_cleared_histogram\fR
.ad
.RS 12n
Checksum histogram of cleared bits by bit number in a 64-bit word.
If this field exists, it is an array of counters. Each entry counts bit clears
in a particular bit of a big-endian uint64 type. The first entry counts bits
clears of the the high-order bit of the first byte, the 9th byte, etc, and the
last entry counts clears of the low-order bit of the 8th byte, the 16th byte,
etc. This information is useful for observing a stuck bit in a parallel data
path, such as IDE or parallel SCSI.
.RE
.SS "I/O STAGES"
@ -850,35 +880,38 @@ _:_:_
ZIO_STAGE_OPEN:0x00000001:RWFCI
ZIO_STAGE_READ_BP_INIT:0x00000002:R----
ZIO_STAGE_FREE_BP_INIT:0x00000004:--F--
ZIO_STAGE_ISSUE_ASYNC:0x00000008:RWF--
ZIO_STAGE_WRITE_BP_INIT:0x00000010:-W---
ZIO_STAGE_WRITE_BP_INIT:0x00000004:-W---
ZIO_STAGE_FREE_BP_INIT:0x00000008:--F--
ZIO_STAGE_ISSUE_ASYNC:0x00000010:RWF--
ZIO_STAGE_WRITE_COMPRESS:0x00000020:-W---
ZIO_STAGE_CHECKSUM_GENERATE:0x00000020:-W---
ZIO_STAGE_ENCRYPT:0x00000040:-W---
ZIO_STAGE_CHECKSUM_GENERATE:0x00000080:-W---
ZIO_STAGE_NOP_WRITE:0x00000040:-W---
ZIO_STAGE_NOP_WRITE:0x00000100:-W---
ZIO_STAGE_DDT_READ_START:0x00000080:R----
ZIO_STAGE_DDT_READ_DONE:0x00000100:R----
ZIO_STAGE_DDT_WRITE:0x00000200:-W---
ZIO_STAGE_DDT_FREE:0x00000400:--F--
ZIO_STAGE_DDT_READ_START:0x00000200:R----
ZIO_STAGE_DDT_READ_DONE:0x00000400:R----
ZIO_STAGE_DDT_WRITE:0x00000800:-W---
ZIO_STAGE_DDT_FREE:0x00001000:--F--
ZIO_STAGE_GANG_ASSEMBLE:0x00000800:RWFC-
ZIO_STAGE_GANG_ISSUE:0x00001000:RWFC-
ZIO_STAGE_GANG_ASSEMBLE:0x00002000:RWFC-
ZIO_STAGE_GANG_ISSUE:0x00004000:RWFC-
ZIO_STAGE_DVA_ALLOCATE:0x00002000:-W---
ZIO_STAGE_DVA_FREE:0x00004000:--F--
ZIO_STAGE_DVA_CLAIM:0x00008000:---C-
ZIO_STAGE_DVA_THROTTLE:0x00008000:-W---
ZIO_STAGE_DVA_ALLOCATE:0x00010000:-W---
ZIO_STAGE_DVA_FREE:0x00020000:--F--
ZIO_STAGE_DVA_CLAIM:0x00040000:---C-
ZIO_STAGE_READY:0x00010000:RWFCI
ZIO_STAGE_READY:0x00080000:RWFCI
ZIO_STAGE_VDEV_IO_START:0x00020000:RW--I
ZIO_STAGE_VDEV_IO_DONE:0x00040000:RW--I
ZIO_STAGE_VDEV_IO_ASSESS:0x00080000:RW--I
ZIO_STAGE_VDEV_IO_START:0x00100000:RW--I
ZIO_STAGE_VDEV_IO_DONE:0x00200000:RW--I
ZIO_STAGE_VDEV_IO_ASSESS:0x00400000:RW--I
ZIO_STAGE_CHECKSUM_VERIFY0:0x00100000:R----
ZIO_STAGE_CHECKSUM_VERIFY:0x00800000:R----
ZIO_STAGE_DONE:0x00200000:RWFCI
ZIO_STAGE_DONE:0x01000000:RWFCI
.TE
.SS "I/O FLAGS"
@ -909,21 +942,24 @@ ZIO_FLAG_DONT_CACHE:0x00000800
ZIO_FLAG_NODATA:0x00001000
ZIO_FLAG_INDUCE_DAMAGE:0x00002000
ZIO_FLAG_IO_RETRY:0x00004000
ZIO_FLAG_PROBE:0x00008000
ZIO_FLAG_TRYHARD:0x00010000
ZIO_FLAG_OPTIONAL:0x00020000
ZIO_FLAG_IO_ALLOCATING:0x00004000
ZIO_FLAG_IO_RETRY:0x00008000
ZIO_FLAG_PROBE:0x00010000
ZIO_FLAG_TRYHARD:0x00020000
ZIO_FLAG_OPTIONAL:0x00040000
ZIO_FLAG_DONT_QUEUE:0x00040000
ZIO_FLAG_DONT_PROPAGATE:0x00080000
ZIO_FLAG_IO_BYPASS:0x00100000
ZIO_FLAG_IO_REWRITE:0x00200000
ZIO_FLAG_RAW:0x00400000
ZIO_FLAG_GANG_CHILD:0x00800000
ZIO_FLAG_DDT_CHILD:0x01000000
ZIO_FLAG_GODFATHER:0x02000000
ZIO_FLAG_NOPWRITE:0x04000000
ZIO_FLAG_REEXECUTED:0x08000000
ZIO_FLAG_DELEGATED:0x10000000
ZIO_FLAG_FASTWRITE:0x20000000
ZIO_FLAG_DONT_QUEUE:0x00080000
ZIO_FLAG_DONT_PROPAGATE:0x00100000
ZIO_FLAG_IO_BYPASS:0x00200000
ZIO_FLAG_IO_REWRITE:0x00400000
ZIO_FLAG_RAW_COMPRESS:0x00800000
ZIO_FLAG_RAW_ENCRYPT:0x01000000
ZIO_FLAG_GANG_CHILD:0x02000000
ZIO_FLAG_DDT_CHILD:0x04000000
ZIO_FLAG_GODFATHER:0x08000000
ZIO_FLAG_NOPWRITE:0x10000000
ZIO_FLAG_REEXECUTED:0x20000000
ZIO_FLAG_DELEGATED:0x40000000
ZIO_FLAG_FASTWRITE:0x80000000
.TE