Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp5912050pxb; Sun, 7 Nov 2021 23:31:53 -0800 (PST) X-Google-Smtp-Source: ABdhPJy4GjKexYDSgfmPuAZy+9iFmae3N8W+aDO7Qki9fyFGYHHgRttY89rhGR0zG0kbb3sWIkin X-Received: by 2002:a05:6402:2687:: with SMTP id w7mr63940585edd.266.1636356713225; Sun, 07 Nov 2021 23:31:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1636356713; cv=none; d=google.com; s=arc-20160816; b=eEPBIUT27QosgW1INnTVS2IyduPVFiQZGAcdl3uUUGVC+8dSp3QoQ8DdNmsBjllgAi IZScFkSn4GijSRFIYpnnhVobBzdS2LKb6imq4uBAZanaR+k8BRO8iDX2T8jsBRxDNu66 3G21ye/pr6FDS+7CMZcCWEfqXJH2mcFk9SxnnJ8OOWbCg2xsgOeB32GkAD9W25gh1yhB GbDvi/1GgXjHi7xLkCcCK171dyP82rPHoFUOjhnJezzXq90I/JRFE6N2aPM3evjQ+run /IriqA5mHisOkGWtHMwYUTATTKGGXsKg7Pq02JVuIj2G6y1tCuvpBchqTzquf8EUZ5zh Bvmw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:date:cc:to:from:subject :message-id; bh=rm/EaDVOaUPgZHEFhDwQTj0M6YpY+06ZOfvUC+JwZ7s=; b=LFZTDonj1NUgXu4FL4IPaswR23+hH3kBpSAHLsJiWnNlmb2tVKxW16VCfeF74Jq6BG 9rqwHAMdYiRpyhzRCMF5PWNRjCb17Ua/YGKEWYm7vm5Y0PzVTzBepniZJ4tP6PXE1cmc FYSHtXpCQQ2+uv5BtCuOvpwpwz26xYIGUh0NPOWsQfA44Q0xguk9PmDIxCbzl65NaZ4B aiftyQjGwY6OtAZI0tfP941op9JESyi/n2eAxoxWPO/OVxe0NX/ggCgRrdbP+DKyvD8X E66LSISbmLPfXaj4iqEtkUO+h7tio9+X/LcVaTjH9wOQb/6nw5ZnG51CqscU+HZaO5sV Prow== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id r15si26309084edx.487.2021.11.07.23.31.30; Sun, 07 Nov 2021 23:31:53 -0800 (PST) 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237272AbhKHEFs (ORCPT + 99 others); Sun, 7 Nov 2021 23:05:48 -0500 Received: from smtprelay0037.hostedemail.com ([216.40.44.37]:50062 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S235502AbhKHEFr (ORCPT ); Sun, 7 Nov 2021 23:05:47 -0500 Received: from omf20.hostedemail.com (clb03-v110.bra.tucows.net [216.40.38.60]) by smtprelay01.hostedemail.com (Postfix) with ESMTP id 6583E1010DF67; Mon, 8 Nov 2021 04:03:01 +0000 (UTC) Received: from [HIDDEN] (Authenticated sender: joe@perches.com) by omf20.hostedemail.com (Postfix) with ESMTPA id 5720F18A60C; Mon, 8 Nov 2021 04:03:00 +0000 (UTC) Message-ID: Subject: Re: [PATCH] fs: direct-io: use DIV_ROUND_UP helper macro for calculations From: Joe Perches To: Matthew Wilcox Cc: Wu Bo , viro@zeniv.linux.org.uk, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linfeilong@huawei.com Date: Sun, 07 Nov 2021 20:02:59 -0800 In-Reply-To: References: <1636341011-6494-1-git-send-email-wubo40@huawei.com> <3b7c6fa1183d4567403382ae8ba439dcea4b7e02.camel@perches.com> Content-Type: text/plain; charset="ISO-8859-1" User-Agent: Evolution 3.40.4-1 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-4.25 X-Stat-Signature: z6m45bzpaqmq7mj5ade68bmwpe31jdax X-Rspamd-Server: rspamout02 X-Rspamd-Queue-Id: 5720F18A60C X-Session-Marker: 6A6F6540706572636865732E636F6D X-Session-ID: U2FsdGVkX1/U21IkYUoZsjaivmPaxUhf0MAlvfim9b4= X-HE-Tag: 1636344180-699605 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 2021-11-08 at 03:52 +0000, Matthew Wilcox wrote: > On Sun, Nov 07, 2021 at 07:17:07PM -0800, Joe Perches wrote: > > If you are interested, there are definitely a few more opportunities > > to use this DIV_ROUND_UP macro in the kernel: > > > > $ git grep -P -n '\(\s*([\w\.\>\[\]\-]+)\s*\+\s*([\w\.\>\[\]\-]+)\s*-\s*1\s*\)\s*/\s*(?:\1|\2)\b' > > arch/alpha/boot/tools/objstrip.c:260: mem_size = ((mem_size + pad - 1) / pad) * pad; > > Might want to exclude 'tools' ... > > > tools/bpf/bpftool/gen.c:184: align_off = (off + align - 1) / align * align; > > tools/io_uring/io_uring-bench.c:140: return (DEPTH + s->nr_files - 1) / s->nr_files; > > tools/lib/bpf/linker.c:1115: dst_align_sz = (dst->sec_sz + dst_align - 1) / dst_align * dst_align; > > tools/lib/subcmd/help.c:119: rows = (cmds->cnt + cols - 1) / cols; > > tools/testing/selftests/bpf/prog_tests/core_reloc.c:804: return (sz + page_size - 1) / page_size * page_size; > > tools/testing/selftests/bpf/prog_tests/mmap.c:13: return (sz + page_size - 1) / page_size * page_size; > > tools/testing/selftests/net/forwarding/sch_red.sh:202: local pkts=$(((diff + PKTSZ - 1) / PKTSZ)) > > tools/vm/page-types.c:943: size, (size + page_size - 1) / page_size); > > ... because most of these files won't have access to that macro. > Definitely compile-test before sending a patch. Always. btw: tools/include/linux/kernel.h:#define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d))