Commit | Line | Data |
---|---|---|
8055e41d JA |
1 | #ifndef FIO_LFSR_H |
2 | #define FIO_LFSR_H | |
3 | ||
4 | #include <inttypes.h> | |
5 | ||
6 | #define FIO_MAX_TAPS 8 | |
7 | ||
8 | struct lfsr_taps { | |
9 | unsigned int length; | |
10 | unsigned int taps[FIO_MAX_TAPS]; | |
11 | }; | |
12 | ||
13 | ||
14 | struct fio_lfsr { | |
15 | uint64_t last_val; | |
16 | uint64_t max_val; | |
17 | uint64_t num_vals; | |
18 | struct lfsr_taps taps; | |
19 | }; | |
20 | ||
74776733 | 21 | int lfsr_next(struct fio_lfsr *fl, uint64_t *off, uint64_t); |
82af46be | 22 | int lfsr_init(struct fio_lfsr *fl, uint64_t size, unsigned long seed); |
0415406f | 23 | void lfsr_reset(struct fio_lfsr *fl, unsigned long seed); |
8055e41d JA |
24 | |
25 | #endif |