[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <alpine.LRH.2.02.1908111410590.13454@file01.intranet.prod.int.rdu2.redhat.com>
Date: Sun, 11 Aug 2019 14:11:16 -0400 (EDT)
From: Mikulas Patocka <mpatocka@...hat.com>
To: Huaisheng Ye <yehs2007@...o.com>
cc: snitzer@...hat.com, agk@...hat.com, prarit@...hat.com,
tyu1@...ovo.com, dm-devel@...hat.com, linux-kernel@...r.kernel.org,
Huaisheng Ye <yehs1@...ovo.com>
Subject: Re: dm writecache: add unlikely for getting two block with same
LBA
On Mon, 12 Aug 2019, Huaisheng Ye wrote:
> From: Huaisheng Ye <yehs1@...ovo.com>
>
> In function writecache_writeback, entries g and f has same original
> sector only happens at entry f has been committed, but entry g has
> NOT yet.
>
> The probability of this happening is very low in the following
> 256 blocks at most of entry e, so add unlikely for the result.
>
> Signed-off-by: Huaisheng Ye <yehs1@...ovo.com>
Acked-by: Mikulas Patocka <mpatocka@...hat.com>
> ---
> drivers/md/dm-writecache.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/md/dm-writecache.c b/drivers/md/dm-writecache.c
> index 5c7009d..3643084 100644
> --- a/drivers/md/dm-writecache.c
> +++ b/drivers/md/dm-writecache.c
> @@ -1628,8 +1628,8 @@ static void writecache_writeback(struct work_struct *work)
> if (unlikely(!next_node))
> break;
> g = container_of(next_node, struct wc_entry, rb_node);
> - if (read_original_sector(wc, g) ==
> - read_original_sector(wc, f)) {
> + if (unlikely(read_original_sector(wc, g) ==
> + read_original_sector(wc, f))) {
> f = g;
> continue;
> }
> --
> 1.8.3.1
>
>
Powered by blists - more mailing lists