Commit a231f07a authored by Coly Li's avatar Coly Li Committed by Jens Axboe

bcache: set largest seq to ja->seq[bucket_index] in journal_read_bucket()

In journal_read_bucket() when setting ja->seq[bucket_index], there might
be potential case that a later non-maximum overwrites a better sequence
number to ja->seq[bucket_index]. This patch adds a check to make sure
that ja->seq[bucket_index] will be only set a new value if it is bigger
then current value.
Signed-off-by: default avatarColy Li <colyli@suse.de>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 2464b693
...@@ -156,7 +156,8 @@ reread: left = ca->sb.bucket_size - offset; ...@@ -156,7 +156,8 @@ reread: left = ca->sb.bucket_size - offset;
list_add(&i->list, where); list_add(&i->list, where);
ret = 1; ret = 1;
ja->seq[bucket_index] = j->seq; if (j->seq > ja->seq[bucket_index])
ja->seq[bucket_index] = j->seq;
next_set: next_set:
offset += blocks * ca->sb.block_size; offset += blocks * ca->sb.block_size;
len -= blocks * ca->sb.block_size; len -= blocks * ca->sb.block_size;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment