Recent changes (master)
The following changes since commit 8f7630813305a4f4f04a5f9ba20b2a7d486c0cfb:
io_u: don't add slat samples if we are in ramp time (2017-03-07 10:18:53 -0700)
are available in the git repository at:
git://git.kernel.dk/fio.git master
for you to fetch changes up to ae3a5accfdbe1fbfde6ba4ab583887a7d3d779ac:
verify: add support for the sha3 variants (2017-03-08 09:13:14 -0700)
----------------------------------------------------------------
Jens Axboe (2):
crc: add support for sha3 variants
verify: add support for the sha3 variants
HOWTO | 12 +++++ crc/sha3.c | 173 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ crc/sha3.h | 42 +++++++++++++++ crc/test.c | 81 +++++++++++++++++++++++++++++ fio.1 | 2 +- options.c | 16 ++++++ verify.c | 173 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ verify.h | 16 ++++++ 8 files changed, 514 insertions(+), 1 deletion(-) create mode 100644 crc/sha3.c create mode 100644 crc/sha3.h
---
Diff of recent changes:
HOWTO +12 -0
@@ -2355,6 +2355,18 @@ Verification **sha1** Use optimized sha1 as the checksum function. + **sha3-224** + Use optimized sha3-224 as the checksum function. + + **sha3-256** + Use optimized sha3-256 as the checksum function. + + **sha3-384** + Use optimized sha3-384 as the checksum function. + + **sha3-512** + Use optimized sha3-512 as the checksum function. + **meta** This option is deprecated, since now meta information is included in generic verification header and meta verification happens by
crc/sha3.c new file +173 -0
173 lines not on this page · raw message
crc/sha3.h new file +42 -0
42 lines not on this page · raw message
crc/test.c +81 -0
105 lines not on this page · raw message
fio.1 +1 -1
@@ -1414,7 +1414,7 @@ option. The allowed values are: .RS .RS .TP -.B md5 crc16 crc32 crc32c crc32c-intel crc64 crc7 sha256 sha512 sha1 xxhash +.B md5 crc16 crc32 crc32c crc32c-intel crc64 crc7 sha256 sha512 sha1 sha3-224 sha3-256 sha3-384 sha3-512 xxhash Store appropriate checksum in the header of each block. crc32c-intel is hardware accelerated SSE4.2 driven, falls back to regular crc32c if not supported by the system.
options.c +16 -0
@@ -2674,6 +2674,22 @@ struct fio_option fio_options[FIO_MAX_OPTS] = { .oval = VERIFY_SHA512, .help = "Use sha512 checksums for verification", }, + { .ival = "sha3-224", + .oval = VERIFY_SHA3_224, + .help = "Use sha3-224 checksums for verification", + }, + { .ival = "sha3-256", + .oval = VERIFY_SHA3_256, + .help = "Use sha3-256 checksums for verification", + }, + { .ival = "sha3-384", + .oval = VERIFY_SHA3_384, + .help = "Use sha3-384 checksums for verification", + }, + { .ival = "sha3-512", + .oval = VERIFY_SHA3_512, + .help = "Use sha3-512 checksums for verification", + }, { .ival = "xxhash", .oval = VERIFY_XXHASH, .help = "Use xxhash checksums for verification",
verify.c +173 -0
209 lines not on this page · raw message
verify.h +16 -0
@@ -20,6 +20,10 @@ enum {VERIFY_CRC7 ,/* crc7 sum data blocks */ VERIFY_SHA256 ,/* sha256 sum data blocks */ VERIFY_SHA512 ,/* sha512 sum data blocks */ +VERIFY_SHA3_224 ,/* sha3-224 sum data blocks */ +VERIFY_SHA3_256 ,/* sha3-256 sum data blocks */ +VERIFY_SHA3_384 ,/* sha3-384 sum data blocks */ +VERIFY_SHA3_512 ,/* sha3-512 sum data blocks */ VERIFY_XXHASH ,/* xxhash sum data blocks */ VERIFY_SHA1 ,/* sha1 sum data blocks */ VERIFY_PATTERN, /* verify specific patterns */
@@ -48,6 +52,18 @@ struct verify_header {struct vhdr_md5 {uint32_t md5_digest[4 ]; }; +struct vhdr_sha3_224 { +uint8_t sha[224 /8 ]; +}; +struct vhdr_sha3_256 { +uint8_t sha[256 /8 ]; +}; +struct vhdr_sha3_384 { +uint8_t sha[384 /8 ]; +}; +struct vhdr_sha3_512 { +uint8_t sha[512 /8 ]; +};struct vhdr_sha512 {uint8_t sha512[128 ]; };