diff --git a/src/flashcache_main.c b/src/flashcache_main.c index e0e7d47..af6c953 100644 --- a/src/flashcache_main.c +++ b/src/flashcache_main.c @@ -514,7 +514,7 @@ flashcache_do_pending_noerror(struct kcached_job *job) cacheblk->nr_queued--; if (pending_job->action == INVALIDATE) { DPRINTK("flashcache_do_pending: INVALIDATE %llu", - next_job->bio->bi_sector); + pending_job->bio->bi_sector); VERIFY(pending_job->bio != NULL); queued = flashcache_inval_blocks(dmc, pending_job->bio); if (queued) { @@ -1683,6 +1683,7 @@ flashcache_inval_block_set_v3(struct cache_c *dmc, int set, struct bio *bio, int rw = bio_data_dir(bio); sector_t io_start; sector_t mask; + sector_t start_dbn; mask = ~((1 << dmc->block_shift) - 1); io_start = bio->bi_sector & mask; @@ -1717,6 +1718,7 @@ flashcache_inval_block_set_v3(struct cache_c *dmc, int set, struct bio *bio, } if (!(cacheblk->cache_state & (BLOCK_IO_INPROG | DIRTY)) && (cacheblk->nr_queued == 0)) { + start_dbn = dmc->cache[index].dbn; atomic_dec(&dmc->cached_blocks); DPRINTK("Cache invalidate (!BUSY): Block %llu %lx", start_dbn, cacheblk->cache_state);