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: Coly Li <colyli@suse.de> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
2464b69314
commit
a231f07a5f
|
@ -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;
|
||||||
|
|
Loading…
Reference in New Issue