• Tang Junhui's avatar
    bcache: fix miss key refill->end in writeback · 2d6cb6ed
    Tang Junhui authored
    refill->end record the last key of writeback, for example, at the first
    time, keys (1,128K) to (1,1024K) are flush to the backend device, but
    the end key (1,1024K) is not included, since the bellow code:
    	if (bkey_cmp(k, refill->end) >= 0) {
    		ret = MAP_DONE;
    		goto out;
    	}
    And in the next time when we refill writeback keybuf again, we searched
    key start from (1,1024K), and got a key bigger than it, so the key
    (1,1024K) missed.
    This patch modify the above code, and let the end key to be included to
    the writeback key buffer.
    Signed-off-by: default avatarTang Junhui <tang.junhui.linux@gmail.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarColy Li <colyli@suse.de>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    2d6cb6ed
btree.c 58.8 KB