From: Tang Junhui <tang.junhui@xxxxxxxxxx> >> >> 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). > Oh, yes, that's right. I read the wrong while{} loop. Thanks, Tang