X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=verify.h;h=49ce417cff8c200bbc252b266867db857781d471;hp=c12bc7d0a7a1babb2c266358a05b2a73df4c6c0a;hb=bcdf7c586610734ad617ffd4efeb0e56fe9ac440;hpb=7c353ceb3257b132f4c98326046b42201e070731 diff --git a/verify.h b/verify.h index c12bc7d0..49ce417c 100644 --- a/verify.h +++ b/verify.h @@ -1,6 +1,8 @@ #ifndef FIO_VERIFY_H #define FIO_VERIFY_H +#include + #define FIO_HDR_MAGIC 0xf00baaef enum { @@ -16,6 +18,7 @@ enum { VERIFY_SHA512, /* sha512 sum data blocks */ VERIFY_META, /* block_num, timestamp etc. */ VERIFY_SHA1, /* sha1 sum data blocks */ + VERIFY_PATTERN, /* verify specific patterns */ VERIFY_NULL, /* pretend to verify */ }; @@ -28,16 +31,17 @@ struct verify_header { unsigned int fio_magic; unsigned int len; unsigned int verify_type; + unsigned long rand_seed; }; struct vhdr_md5 { - uint32_t md5_digest[16]; + uint32_t md5_digest[4]; }; struct vhdr_sha512 { uint8_t sha512[128]; }; struct vhdr_sha256 { - uint8_t sha256[128]; + uint8_t sha256[64]; }; struct vhdr_sha1 { uint32_t sha1[5]; @@ -69,6 +73,7 @@ extern void populate_verify_io_u(struct thread_data *, struct io_u *); extern int __must_check get_next_verify(struct thread_data *td, struct io_u *); extern int __must_check verify_io_u(struct thread_data *, struct io_u *); extern int verify_io_u_async(struct thread_data *, struct io_u *); +extern void fill_pattern(struct thread_data *td, void *p, unsigned int len, struct io_u *io_u, unsigned long seed, int use_seed); /* * Async verify offload