Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp443051pxv; Thu, 8 Jul 2021 06:13:38 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyoRL5JFUVvxnfmHTHc8PgIS/k0JFwg777MTbkaOrPGhfzux/gjoUZW0s2WSW6YZ/Gl4Ahe X-Received: by 2002:a6b:4412:: with SMTP id r18mr469963ioa.120.1625750018287; Thu, 08 Jul 2021 06:13:38 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625750018; cv=none; d=google.com; s=arc-20160816; b=aIt597vKaKqdtyg0og767TkPLqBA3jQx2iOmHgPpyG7ScgvkNa+SFUlLOB8xx/RIfk G7WQIiULuJTK6RegoFKr848BPSRaLrj6vicbgK+OMXr4C4rKZkab8EvJRLcSWYKFipSS TaFmyD0c2VTqNRA91GEIfQw7BaEkbQfU3ZX6KqJncYVARA1G8IkTD4+kEN2sngiNYDgt HH3V768XvcgT9WbTWUN16On4FaeOLumQ6KRnciFoetcb9FChUsw9dh2zeX6TATvZHoms 5srKT9ouA32K4v/JtlZsSa5aY0dv83xDTdS0xYuTGEaHcEt1cIpO9dnPXhN6HUs3MJKQ KUYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:references:to:from:subject; bh=7Z6E8LW8xAEZ/eLLu0nyHzi1EJt4QYfw1fpwy81sOM8=; b=ZFQaCiJl+u+7/fFsnHc1rus240FrPhQ25EsCMjlxz+COPck0aSXY3LCB+mv2npzaI0 DNW2I/1L8SIXepRYHfvEb9nuOqDfKOVP9TMhB3wY+2R7L4f5H6JK/jdlH4BzBQrHEZfg z7cjxUEfWoqfHFid8f9aH/25cFHF70zdQgmN3LiYs2L6sU4twn+z39iHz9Nbw0psr9+R h4lSofgAvCje+42fPSgskjrZB01/Ui6d7iZIsBxh0zD59hif+TI18pFbaWeJFl0hD7W8 dBdR4NkmbR+4mqKBmjYxUX2cX0CrF1M4+6M3p9584Hx1VJxeiW7irVWML3MkKMu/TSUe 3HnQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=huawei.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m6si2141709iol.83.2021.07.08.06.13.13; Thu, 08 Jul 2021 06:13:38 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=huawei.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231858AbhGHNOH (ORCPT + 99 others); Thu, 8 Jul 2021 09:14:07 -0400 Received: from szxga01-in.huawei.com ([45.249.212.187]:14041 "EHLO szxga01-in.huawei.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230080AbhGHNOG (ORCPT ); Thu, 8 Jul 2021 09:14:06 -0400 Received: from dggeme755-chm.china.huawei.com (unknown [172.30.72.55]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4GLGn43RmPzbbZ4; Thu, 8 Jul 2021 21:08:08 +0800 (CST) Received: from [10.174.179.57] (10.174.179.57) by dggeme755-chm.china.huawei.com (10.3.19.101) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2176.2; Thu, 8 Jul 2021 21:11:20 +0800 Subject: Re: [PATCH v2] libnvdimm, badrange: replace div_u64_rem with DIV_ROUND_UP From: Kemeng Shi To: , , , , , References: <194fed48-eaf3-065f-9571-7813ad35b098@huawei.com> Message-ID: <8ebb412c-7978-5222-746e-1e35ff518275@huawei.com> Date: Thu, 8 Jul 2021 21:11:20 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 In-Reply-To: <194fed48-eaf3-065f-9571-7813ad35b098@huawei.com> Content-Type: text/plain; charset="gbk" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.174.179.57] X-ClientProxiedBy: dggems706-chm.china.huawei.com (10.3.19.183) To dggeme755-chm.china.huawei.com (10.3.19.101) X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org A gentle ping on 2021/6/26 11:53, Kemeng Shi wrote: > __add_badblock_range use div_u64_rem to round up end_sector and it > will introduces unnecessary rem define and costly '%' operation. > So clean it with DIV_ROUND_UP. > > Signed-off-by: Kemeng Shi > --- > V1->V2: > -- fix that end_sector is assigned twice, sorry for that. > > drivers/nvdimm/badrange.c | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > > diff --git a/drivers/nvdimm/badrange.c b/drivers/nvdimm/badrange.c > index aaf6e215a8c6..af622ae511aa 100644 > --- a/drivers/nvdimm/badrange.c > +++ b/drivers/nvdimm/badrange.c > @@ -187,12 +187,9 @@ static void __add_badblock_range(struct badblocks *bb, u64 ns_offset, u64 len) > const unsigned int sector_size = 512; > sector_t start_sector, end_sector; > u64 num_sectors; > - u32 rem; > > start_sector = div_u64(ns_offset, sector_size); > - end_sector = div_u64_rem(ns_offset + len, sector_size, &rem); > - if (rem) > - end_sector++; > + end_sector = DIV_ROUND_UP(ns_offset + len, sector_size); > num_sectors = end_sector - start_sector; > > if (unlikely(num_sectors > (u64)INT_MAX)) { > -- Best wishes Kemeng Shi