From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=3.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id B53ECC433E6 for ; Tue, 2 Feb 2021 07:11:20 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 75EB364DAE for ; Tue, 2 Feb 2021 07:11:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232122AbhBBHLD (ORCPT ); Tue, 2 Feb 2021 02:11:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46154 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231194AbhBBHKy (ORCPT ); Tue, 2 Feb 2021 02:10:54 -0500 Received: from mail-il1-x12a.google.com (mail-il1-x12a.google.com [IPv6:2607:f8b0:4864:20::12a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 66B30C06174A; Mon, 1 Feb 2021 23:10:14 -0800 (PST) Received: by mail-il1-x12a.google.com with SMTP id q5so18117980ilc.10; Mon, 01 Feb 2021 23:10:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=zmSuw7wDu6a3wNmrLo/hehSg5Yx/sWDPdhwepqYWewQ=; b=jmGBdch1E0RYAJSsIuQKYd/7GqQSCYar8lmsR3O4nlZjMjz/mS+iLV8WB3TN+m+4// E/QWSg2+PpaAjC7/92+P85CLbqpTmNWw7vcoGWP70xKSCL4R8UzbL/2lNs826ubbqhd3 zdSP2Omj+LHhgyGSRJvuynEKJojEKr30uKIk0zMLIyhEhRgCeEn7Yjs6Rx4l1ym0J8Vs Cg/JrdNsSE2xqxodw4sverEW1vhLEcirvkwiMGhA8f9IjOXmA0vy3/+ZC2V6R61NNszf +zFE/NC7/bjaBxYYdneLUDjzPIcrKjBXXwDNA8t3hGFIosjTh+M92UxiXnf92b/kej8L B3jw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=zmSuw7wDu6a3wNmrLo/hehSg5Yx/sWDPdhwepqYWewQ=; b=g8u1LeUsiuOLHLCIXc/BlXmkFLyNLLhsNFciRzWtHQFFxCTuKSt2xZkKRqlnQVkxdL TidIPU0XhL9hjWpoiw9eQTMsKccVtU+WqguemGLPD0oLsiVkORh8Sd5OtztVKIkw4ngM cEGed8/Q+ywNR3Xoh8p3zUYAiitrKLijjw6i6BnlBXl8uOCR6/62eeaiL99RMNMuNbUu HPg+B0vY/5VwdlHn7pp9Oxx3EXaNpQ4ixjwkNYndbxtc5sN5wIBYQ7V1QxziRRBrY79i Ks9L61UzVDrs4V7gn/XGCC9hqXhTwCUXBxxngZcI8Nf+HMKcuwKMccJgj5J1zczv7VHx Un2g== X-Gm-Message-State: AOAM533cepLw0kKpmpzzBeRmI92gpVBd9KgKxJtoClo4X3kSfSYYTybP 3o8rhrJ2nf6cO2EVdJiJl05CuUxX89ens9hodZHNtpVI/ltFuQ== X-Google-Smtp-Source: ABdhPJz2VpiyzoIfttXg9MvJMNS9zPgO0x9UhiGqOhJ/5rolRWPoNgq4omjMpEyBcebchyReWcuBEdIM+H1hVrBgozA= X-Received: by 2002:a05:6e02:cb:: with SMTP id r11mr17996768ilq.116.1612249813762; Mon, 01 Feb 2021 23:10:13 -0800 (PST) MIME-Version: 1.0 References: <20210130191719.7085-1-yury.norov@gmail.com> <20210130191719.7085-6-yury.norov@gmail.com> In-Reply-To: From: Yury Norov Date: Mon, 1 Feb 2021 23:10:02 -0800 Message-ID: Subject: Re: [PATCH 5/8] bitsperlong.h: introduce SMALL_CONST() macro To: Andy Shevchenko Cc: linux-m68k , Linux Kernel Mailing List , Linux-SH , Linux-Arch , Geert Uytterhoeven , Yoshinori Sato , Rich Felker , Arnd Bergmann , Dennis Zhou , Andrew Morton , Wolfram Sang , David Sterba , Stefano Brivio , "Ma, Jianpeng" , Wei Yang , Josh Poimboeuf , John Paul Adrian Glaubitz , Joe Perches Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-sh@vger.kernel.org On Mon, Feb 1, 2021 at 5:45 AM Andy Shevchenko wrote: > > On Sat, Jan 30, 2021 at 11:17:16AM -0800, Yury Norov wrote: > > Many algorithms become simpler if they are passed with relatively small > > input values. One example is bitmap operations when the whole bitmap fits > > into one word. To implement such simplifications, linux/bitmap.h declares > > small_const_nbits() macro. > > > > Other subsystems may also benefit from optimizations of this sort, like > > find_bit API in the following patches. So it looks helpful to generalize > > the macro and extend it's visibility. > > Hmm... Are we really good to allow 0 as a parameter to it? I remember we had > a thread at some point where Rasmus explained why 0 is excluded. Now we pass (nbits - 1) instead of nbits, which is ULONG_MAX in case of nbits == 0 > > --- a/tools/include/asm-generic/bitsperlong.h > > +++ b/tools/include/asm-generic/bitsperlong.h > > Tools part in a separate patch? > > -- > With Best Regards, > Andy Shevchenko > >