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=-8.5 required=3.0 tests=BAYES_00,DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=ham 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 85E21C4338F for ; Sat, 14 Aug 2021 21:17:25 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 08FDC60F46 for ; Sat, 14 Aug 2021 21:17:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 08FDC60F46 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=kvack.org Received: by kanga.kvack.org (Postfix) id 32AC68D0001; Sat, 14 Aug 2021 17:17:24 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 30CEC6B0074; Sat, 14 Aug 2021 17:17:24 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 1C9EE8D0001; Sat, 14 Aug 2021 17:17:24 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0089.hostedemail.com [216.40.44.89]) by kanga.kvack.org (Postfix) with ESMTP id F281E6B0073 for ; Sat, 14 Aug 2021 17:17:23 -0400 (EDT) Received: from smtpin18.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 85404180CE69C for ; Sat, 14 Aug 2021 21:17:23 +0000 (UTC) X-FDA: 78474947166.18.02CBC88 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) by imf17.hostedemail.com (Postfix) with ESMTP id 3990AF002CAE for ; Sat, 14 Aug 2021 21:17:23 +0000 (UTC) Received: by mail-pl1-f181.google.com with SMTP id n12so15636682plf.4 for ; Sat, 14 Aug 2021 14:17:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=eGEOABaW+Jyt8FMHeH6RyQFPROFOcMHr8N2XiGjbDrs=; b=I3QzjE207ZflawaKKpji4QRm89bQ1A3Q0gksdRuOQxuvpaowiu8dTNx1fyzpGMInJP ostZMyu6ka1isxCZ2YdgM7NeOhV8ovPJrdzCtGB607Qi0ajFAbyVqtOwuvYCvF3lNl5W 2gzsa842TdVlwdSe7T4KIqKD9LNPqlddUaVKx6tmwSfH05UlA02W4m7IIV1YRk95Vt7/ B+MguM2AJJo1lsqhfq3XeoNBVO5ZxmRgFPIz1A88s+cbIlw3KZBk3kBqQGFN45XUNpkv cl4ltNivCmmDhh8lhk0f2qRHJ4CTsLmE9jDfvcKFo8yZXZnwPyeRjDP1uK4bgoKaEAsO sSvw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=eGEOABaW+Jyt8FMHeH6RyQFPROFOcMHr8N2XiGjbDrs=; b=h1X3FElm21QVbWIh9CAfNdzdaS4zw1tPUy3ouSgYUhSVjVoSD9L5JGrRa/r1XWxTv/ EP1n72g7dVvzf2jxhxpqkXgfaVQm8VuKBhupyswCqvtWeQpFtTecmohBdcSPR+iXvwSZ pIQqts2UiqBFosR/VBBZpbWOh6uqzUB2JMOIToVcGYc/ff3qgGzU+84hu6uj2zj3VHTq zgjT5UWpX6x+vYiwkpwysnLmBwcYw47gzLiv1s5T2Gc3pnEvpVQDX0ecolGnBJv5z4G+ 7o/234MJpDKyQlB4JhLKs1eAURgWlsNH8ojlL8Hgil1wpjSPaqXXCiAvgDYGzQ46hky/ joCQ== X-Gm-Message-State: AOAM531KlxzaHsMcNgjxCooW65+tmPg6eZBNiv0hhl1dgCM6PgjfOmwp s/Y8zoy1MxsiHVhhnzA/EWQ= X-Google-Smtp-Source: ABdhPJwmFsyM66ivdWGbPvVG1tm5rS7lVzakmgwAMXc7eBgk/qC2GYFSWSHTH5GxrhsrKGfjp/usTw== X-Received: by 2002:a63:cf0a:: with SMTP id j10mr8335224pgg.4.1628975841948; Sat, 14 Aug 2021 14:17:21 -0700 (PDT) Received: from localhost ([12.28.44.171]) by smtp.gmail.com with ESMTPSA id x4sm6454780pff.126.2021.08.14.14.17.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 14 Aug 2021 14:17:21 -0700 (PDT) From: Yury Norov To: Andrew Morton , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-arch@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-mmc@vger.kernel.org, linux-perf-users@vger.kernel.org, kvm@vger.kernel.org, "James E.J. Bottomley" , Alexander Lobakin , Alexander Shishkin , Alexey Klimov , Andrea Merello , Andy Shevchenko , Arnaldo Carvalho de Melo , Arnd Bergmann , Ben Gardon , Benjamin Herrenschmidt , Brian Cain , Catalin Marinas , Christoph Lameter , Daniel Bristot de Oliveira , David Hildenbrand , Dennis Zhou , Geert Uytterhoeven , Heiko Carstens , Ian Rogers , Ingo Molnar , Jaegeuk Kim , Jakub Kicinski , Jiri Olsa , Joe Perches , Jonas Bonn , Leo Yan , Mark Rutland , Namhyung Kim , Palmer Dabbelt , Paolo Bonzini , Peter Xu , Peter Zijlstra , Petr Mladek , Rasmus Villemoes , Rich Felker , Samuel Mendoza-Jonas , Sean Christopherson , Sergey Senozhatsky , Shuah Khan , Stefan Kristiansson , Steven Rostedt , Tejun Heo , Thomas Bogendoerfer , Ulf Hansson , Will Deacon , Wolfram Sang , Yoshinori Sato , Yury Norov Subject: [PATCH RESEND 00/17] Resend bitmap patches Date: Sat, 14 Aug 2021 14:16:56 -0700 Message-Id: <20210814211713.180533-1-yury.norov@gmail.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 3990AF002CAE X-Stat-Signature: 36yo8fpgsqaqdyrfeaybah4gmexwkztr Authentication-Results: imf17.hostedemail.com; dkim=pass header.d=gmail.com header.s=20161025 header.b=I3QzjE20; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf17.hostedemail.com: domain of yurynorov@gmail.com designates 209.85.214.181 as permitted sender) smtp.mailfrom=yurynorov@gmail.com X-HE-Tag: 1628975843-591132 Content-Transfer-Encoding: quoted-printable X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: This is a resend of previously submitted series: https://lore.kernel.org/patchwork/cover/1462071/ https://lore.kernel.org/patchwork/patch/1458703/ https://lore.kernel.org/lkml/YPG8SdsbQ+sxjk0w@yury-ThinkPad/T/ https://lore.kernel.org/lkml/YMVSHCY9yEocmfVD@yury-ThinkPad/T/ Most of the patches received testing and review. If I missed to add someone's review tag putting all together - my kind apologise. Please resend it here. I believe I addessed all comments except Joe's one. In comment to patch 3= , Joe Perches suggested to rename include/linux/find.h, but didn't give a new name, so I leave it as is. Since this header is not for direct inclusion, I'm OK with any reasonable name, and we can change it later. Andrew, can you please take this series in linux-next? Andy Shevchenko (1): tools: Rename bitmap_alloc() to bitmap_zalloc() Yury Norov (16): bitops: protect find_first_{,zero}_bit properly bitops: move find_bit_*_le functions from le.h to find.h include: move find.h from asm_generic to linux arch: remove GENERIC_FIND_FIRST_BIT entirely lib: add find_first_and_bit() cpumask: use find_first_and_bit() all: replace find_next{,_zero}_bit with find_first{,_zero}_bit where appropriate tools: sync tools/bitmap with mother linux cpumask: replace cpumask_next_* with cpumask_first_* where appropriate include/linux: move for_each_bit() macros from bitops.h to find.h find: micro-optimize for_each_{set,clear}_bit() Replace for_each_*_bit_from() with for_each_*_bit() where appropriate mm/percpu: micro-optimize pcpu_is_populated() bitmap: unify find_bit operations lib: bitmap: add performance test for bitmap_print_to_pagebuf vsprintf: rework bitmap_list_string MAINTAINERS | 4 +- arch/alpha/include/asm/bitops.h | 2 - arch/arc/Kconfig | 1 - arch/arc/include/asm/bitops.h | 1 - arch/arm/include/asm/bitops.h | 1 - arch/arm64/Kconfig | 1 - arch/arm64/include/asm/bitops.h | 1 - arch/csky/include/asm/bitops.h | 1 - arch/h8300/include/asm/bitops.h | 1 - arch/hexagon/include/asm/bitops.h | 1 - arch/ia64/include/asm/bitops.h | 2 - arch/m68k/include/asm/bitops.h | 2 - arch/mips/Kconfig | 1 - arch/mips/include/asm/bitops.h | 1 - arch/openrisc/include/asm/bitops.h | 1 - arch/parisc/include/asm/bitops.h | 2 - arch/powerpc/include/asm/bitops.h | 2 - arch/powerpc/include/asm/cputhreads.h | 2 +- arch/powerpc/platforms/pasemi/dma_lib.c | 4 +- arch/riscv/include/asm/bitops.h | 1 - arch/s390/Kconfig | 1 - arch/s390/include/asm/bitops.h | 1 - arch/s390/kvm/kvm-s390.c | 2 +- arch/sh/include/asm/bitops.h | 1 - arch/sparc/include/asm/bitops_32.h | 1 - arch/sparc/include/asm/bitops_64.h | 2 - arch/x86/Kconfig | 1 - arch/x86/include/asm/bitops.h | 2 - arch/x86/kernel/apic/vector.c | 4 +- arch/x86/um/Kconfig | 1 - arch/xtensa/include/asm/bitops.h | 1 - block/blk-mq.c | 2 +- drivers/block/rnbd/rnbd-clt.c | 2 +- drivers/dma/ti/edma.c | 2 +- drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 4 +- drivers/hwmon/ltc2992.c | 3 +- drivers/iio/adc/ad7124.c | 2 +- drivers/infiniband/hw/irdma/hw.c | 16 +- drivers/media/cec/core/cec-core.c | 2 +- drivers/media/mc/mc-devnode.c | 2 +- drivers/mmc/host/renesas_sdhi_core.c | 2 +- drivers/net/virtio_net.c | 2 +- drivers/pci/controller/dwc/pci-dra7xx.c | 2 +- drivers/scsi/lpfc/lpfc_sli.c | 10 +- drivers/soc/fsl/qbman/bman_portal.c | 2 +- drivers/soc/fsl/qbman/qman_portal.c | 2 +- drivers/soc/ti/k3-ringacc.c | 4 +- drivers/tty/n_tty.c | 2 +- drivers/virt/acrn/ioreq.c | 3 +- fs/f2fs/segment.c | 8 +- fs/ocfs2/cluster/heartbeat.c | 2 +- fs/ocfs2/dlm/dlmdomain.c | 4 +- fs/ocfs2/dlm/dlmmaster.c | 18 +- fs/ocfs2/dlm/dlmrecovery.c | 2 +- fs/ocfs2/dlm/dlmthread.c | 2 +- include/asm-generic/bitops.h | 1 - include/asm-generic/bitops/le.h | 64 --- include/linux/bitmap.h | 34 +- include/linux/bitops.h | 34 -- include/linux/cpumask.h | 46 ++- include/linux/find.h | 372 ++++++++++++++++++ kernel/time/clocksource.c | 4 +- lib/Kconfig | 3 - lib/find_bit.c | 21 + lib/find_bit_benchmark.c | 21 + lib/genalloc.c | 2 +- lib/test_bitmap.c | 37 ++ lib/vsprintf.c | 24 +- mm/percpu.c | 35 +- net/ncsi/ncsi-manage.c | 4 +- tools/include/asm-generic/bitops.h | 1 - tools/include/asm-generic/bitops/find.h | 145 ------- tools/include/linux/bitmap.h | 11 +- .../bitops =3D> tools/include/linux}/find.h | 54 ++- tools/lib/find_bit.c | 20 + tools/perf/bench/find-bit-bench.c | 2 +- tools/perf/builtin-c2c.c | 6 +- tools/perf/builtin-record.c | 2 +- tools/perf/tests/bitmap.c | 2 +- tools/perf/tests/mem2node.c | 2 +- tools/perf/util/affinity.c | 4 +- tools/perf/util/header.c | 4 +- tools/perf/util/metricgroup.c | 2 +- tools/perf/util/mmap.c | 4 +- .../selftests/kvm/dirty_log_perf_test.c | 2 +- tools/testing/selftests/kvm/dirty_log_test.c | 4 +- .../selftests/kvm/x86_64/vmx_dirty_log_test.c | 2 +- 87 files changed, 657 insertions(+), 461 deletions(-) create mode 100644 include/linux/find.h delete mode 100644 tools/include/asm-generic/bitops/find.h rename {include/asm-generic/bitops =3D> tools/include/linux}/find.h (83%= ) --=20 2.30.2