diff options
author | Baokun Li <libaokun1@huawei.com> | 2021-06-09 15:04:33 +0800 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2021-06-14 11:49:04 -0400 |
commit | 8c77f1cb84585efba108df5e67ecc5cbbceef0d9 (patch) | |
tree | 133f0d07d906bf5a5a3508b0c9439b4f4ef17509 /drivers/md | |
parent | 991bd8d7bc78966b4dc427b53a144f276bffcd52 (diff) |
dm writecache: use list_move instead of list_del/list_add in writecache_writeback()
Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Baokun Li <libaokun1@huawei.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers/md')
-rw-r--r-- | drivers/md/dm-writecache.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/md/dm-writecache.c b/drivers/md/dm-writecache.c index e18bbfd3289b..56179a21db0e 100644 --- a/drivers/md/dm-writecache.c +++ b/drivers/md/dm-writecache.c @@ -1864,15 +1864,13 @@ restart: if (unlikely(read_original_sector(wc, f) == read_original_sector(wc, e))) { BUG_ON(!f->write_in_progress); - list_del(&e->lru); - list_add(&e->lru, &skipped); + list_move(&e->lru, &skipped); cond_resched(); continue; } } wc->writeback_size++; - list_del(&e->lru); - list_add(&e->lru, &wbl.list); + list_move(&e->lru, &wbl.list); wbl.size++; e->write_in_progress = true; e->wc_list_contiguous = 1; @@ -1907,8 +1905,7 @@ restart: // break; wc->writeback_size++; - list_del(&g->lru); - list_add(&g->lru, &wbl.list); + list_move(&g->lru, &wbl.list); wbl.size++; g->write_in_progress = true; g->wc_list_contiguous = BIO_MAX_VECS; |