Skip to contentSkip to conversation

Recent changes (master)

PATCH Jens Axboe 1 participant 1 message Apr 28, 2015

lore
Share & tools
lore

Jens Axboe

author
#0 lore raw

The following changes since commit 7c306bb1d27de928cba1b58d7888981d44416fd1:

io_u: fix bug in rounding of generated buffer length (2015-04-24 10:41:58 -0600)

are available in the git repository at:

git://git.kernel.dk/fio.git master

for you to fetch changes up to 9451b93e81fb950a80da09e295e56b1ad4538509:

dedupe: improve 100% dedupe case (2015-04-27 09:37:11 -0600)

----------------------------------------------------------------
Jens Axboe (2):
dedupe: fix dedupe_percentage=100
dedupe: improve 100% dedupe case

 io_u.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

---

Diff of recent changes:

io_u.c +7 -3
index 5064485..d00e6e3 100644
@@ -1896,8 +1896,10 @@ static struct frand_state *get_buf_state(struct thread_data *td)
 
 	if (!td->o.dedupe_percentage)
 		return &td->buf_state;
-	else if (td->o.dedupe_percentage == 100)
-		return &td->buf_state_prev;
+	else if (td->o.dedupe_percentage == 100) {
+		frand_copy(&td->buf_state_prev, &td->buf_state);
+		return &td->buf_state;
+	}
 
 	r = __rand(&td->dedupe_state);
 	v = 1 + (int) (100.0 * (r / (FRAND_MAX + 1.0)));
@@ -1910,7 +1912,9 @@ static struct frand_state *get_buf_state(struct thread_data *td)
 
 static void save_buf_state(struct thread_data *td, struct frand_state *rs)
 {
-	if (rs == &td->buf_state)
+	if (td->o.dedupe_percentage == 100)
+		frand_copy(rs, &td->buf_state_prev);
+	else if (rs == &td->buf_state)
 		frand_copy(&td->buf_state_prev, rs);
 }