Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp2197668imm; Sat, 30 Jun 2018 13:20:47 -0700 (PDT) X-Google-Smtp-Source: AAOMgpcnhmWP8+rxmbhtf2PPLRmfvO3cLN7hwI67RpOPI7xCOakGDz4xkMr0PWHcoUQbD3xzmtM0 X-Received: by 2002:a62:d98f:: with SMTP id b15-v6mr15844795pfl.1.1530390047418; Sat, 30 Jun 2018 13:20:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1530390047; cv=none; d=google.com; s=arc-20160816; b=pAXVtqZvq238iT64MUIgNgf9bUuGX8kvhsdFq1vOmktpZNK1ccxG1qSo2XfaR5Iej2 rsbpo1Xv6+NLCqTtnLqCco6Zve86nT0/OgQuzSzqUq46qbtj41mlsZToEYFNsDC53veX QWVQu2bhCV+gpWZbKjMEkjutOlM1oEWjejHhico+RpXVZmgyIkLdW6t7AZvZehpHAKlr befAhbYaDOrFQg2vjoPuPubkZcFlpfSxAXvX2LU9zoVsvz604NmxxE3yAyBNKpSKJPCe pTA85pgFX4ucjEbPC8S9Pu+PIaZi+k4tV379D1QRg+l4waO+Zd1k8S2I2qE0zAXLQWYr +F1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :arc-authentication-results; bh=cSidSiRCNYNAWt1cZ7gBMLUYeSFx/lxmMlWAuLYp2eM=; b=umxxTIQsh+Chj9jggz6Q/EZPAkBqOzscKdaWnjE/Cd+H3Uv6325rC7WZTbkQWXyHQ8 NqODAgkZw48CheatQpl/Xhy8EOvTbzmbkUDj1gxRiUh5i9Cmhl3wzRvJxxIW2ryQnBE/ Y02tLz7SN3RXbkmE4/bHTqYL6hUr853x9pda50Y/RW8KUV1bMb/6gaL9Y2pSuU2KmM9N riqyci4xcyfFYLgS0CE18jRB6/ThHtIM3SX5iZ1JB8FePt6YXMv3iwjoE+gZaXmKFf9o 7qg3MMR/vuWCtIOk3ckisEv7I/fjW9m/3LKO9Ao09GYuHMJ6QDz1Is/KrdX5YwhsJ3n7 8kGw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b18-v6si10588050pgs.417.2018.06.30.13.20.33; Sat, 30 Jun 2018 13:20:47 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752063AbeF3USL (ORCPT + 99 others); Sat, 30 Jun 2018 16:18:11 -0400 Received: from mga14.intel.com ([192.55.52.115]:22935 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751874AbeF3USA (ORCPT ); Sat, 30 Jun 2018 16:18:00 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 30 Jun 2018 13:17:59 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.51,291,1526367600"; d="scan'208";a="212458009" Received: from black.fi.intel.com ([10.237.72.28]) by orsmga004.jf.intel.com with ESMTP; 30 Jun 2018 13:17:47 -0700 Received: by black.fi.intel.com (Postfix, from userid 1003) id 376A4CB; Sat, 30 Jun 2018 23:17:50 +0300 (EEST) From: Andy Shevchenko To: Alasdair Kergon , Mike Snitzer , dm-devel@redhat.com, Shaohua Li , linux-raid@vger.kernel.org, Dmitry Torokhov , linux-input@vger.kernel.org, Andrew Morton , Yury Norov , linux-kernel@vger.kernel.org, mika.westerberg@linux.intel.com, Joe Perches Cc: Andy Shevchenko Subject: [PATCH v4 0/5] bitmap: Introduce alloc/free helpers Date: Sat, 30 Jun 2018 23:17:45 +0300 Message-Id: <20180630201750.2588-1-andriy.shevchenko@linux.intel.com> X-Mailer: git-send-email 2.18.0 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org A lot of code is using allocation of bitmaps using BITS_PER_LONG() macro and sizeof(unsigned long) operator. The readability suffers because of this. The series introduces three helpers, i.e. bitmap_alloc(), bitmap_zalloc() and bitmap_free(), to make it more cleaner. Patches 1 and 2 are preparatory to avoid namespace collisions between bitmap API and DM / MD bitmap. No functional changes intended. Patch 3 introduces new helpers. Patches 4 and 5 is just an example how to use new helpers. Locally I have like dozen of them against different subsystems and drivers. Taking above into consideration it might make sense to have an immutable branch for this cycle. Ideally it would go through Input subsystem, thus, needs an Ack from MD / DM maintainer(s). Since v3: - split DM part and do rename accordingly (Mike) - explain better in the commit message why we can't make helpers as inliners (Dmitry, Andrew) - drop applied orphaned patch Since v2: - fix compilation issue in MD bitmap code - elaborate changes in commit message of patch 5 Since v1: - added namespace fix patch against MD bitmap API - moved functions to lib/bitmap.c to avoid circular dependencies - appended Dmitry's tags Andy Shevchenko (5): dm: Avoid namespace collision with bitmap API md: Avoid namespace collision with bitmap API bitmap: Add bitmap_alloc(), bitmap_zalloc() and bitmap_free() Input: gpio-keys - Switch to bitmap_zalloc() Input: evdev - Switch to bitmap API drivers/input/evdev.c | 16 +- drivers/input/keyboard/gpio_keys.c | 8 +- drivers/md/dm-raid.c | 6 +- drivers/md/md-bitmap.c | 305 +++++++++--------- drivers/md/md-bitmap.h | 60 ++-- drivers/md/md-cluster.c | 18 +- drivers/md/md.c | 44 +-- .../md/persistent-data/dm-space-map-common.c | 20 +- drivers/md/raid1.c | 35 +- drivers/md/raid10.c | 52 ++- drivers/md/raid5-cache.c | 8 +- drivers/md/raid5.c | 44 +-- include/linux/bitmap.h | 8 + lib/bitmap.c | 19 ++ 14 files changed, 326 insertions(+), 317 deletions(-) -- 2.18.0