On Wed, Dec 27, 2017 at 7:47 PM,  <[email protected]> wrote:
> From: Tang Junhui <[email protected]>
>
> More importantly,
>> +    while (!kthread_should_stop() && next) {
>> ...
>> +            if (nk != 0 && !keys_contiguous(dc, keys[nk-1], next))
>> +                break;
>> +
>> +            size += KEY_SIZE(&next->key);
>> +            keys[nk++] = next;
>> +        } while ((next = bch_keybuf_next(&dc->writeback_keys)));
>
> if the "next" key does not satisfy the contiguous condition, does this
> key not write-back to the backend device?

I believe the current code is correct--- it is not written back *this
time* (since it is not contiguous), but will be written back the next
time through the loop (next is not changed).

Mike

Reply via email to