Received: by 2002:a05:7412:a9a2:b0:e2:908c:2ebd with SMTP id o34csp495037rdh; Thu, 26 Oct 2023 07:51:37 -0700 (PDT) X-Google-Smtp-Source: AGHT+IHimXM87Qtgf3vM22lmDfFlP+sk1CK62gSauN9ue/AE4wtdiL8hgvtg5NpfzEuHzmi4gvE+ X-Received: by 2002:a05:6808:2190:b0:3ad:fd8e:7809 with SMTP id be16-20020a056808219000b003adfd8e7809mr18631919oib.49.1698331897464; Thu, 26 Oct 2023 07:51:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1698331897; cv=none; d=google.com; s=arc-20160816; b=k0IO+RxGBZao5Hb27EFV9f5Wy2wDP62+UByaSnh6g0clzg34D07IJSDss41QnWsMRg QgXuWD7W30OuZV/V4xqCp8NBBh+y87HIx7+eQRuq60cvo1Q35CCfmZyUZSYmJUvmSoGg Qcg4V1GXAu+a83xgCW/qyoAhzL0MR6krA9aJREn1cL6FflvoHcH+66u75Jm07BycC6R/ M/L/cwaDhHGlpPN0Fnmu0J5PvT1UFynbfMrcDEilJPl8HWfwm0U1nosXgkAzpKliznoL LpZ3GHBDIodiUgkkJjPEDoYHShu63LWGNzndQF5hpgHlf2I8YHFCX/LuGRjvKLv2LEZi hXZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=/HMCohvCVUItBLSF49y4DS1f8h5XhHVmI3a8fPrH4+E=; fh=aDKTtk0wMEhyUKsVAswUX11tS7Lzh6+UAICZK7HGi50=; b=DubYOAip4L08P8WUqlhOPxKh6PfGzrz6D90UaXJs9IJVYXfFRgMuUCKNXktID1lyUL +yzrOUCmoqknaGDwHzOqXLrg0n+yCpPmsKRH6JnbPQ8LwtTr99jeV6Mj81B/8YfQcGTm XJ7Y4pDryYywkFxHTfR6bgTgVFPTZM/q1GeFkYKfut1Nq81ZJxyP1SzcjwHP9DB2W6zB fV/adn1WWUnVOanIMh9tWMXLM4TLVOvvu7tmtve9Okpp2JWVVBL7IhcKwjNq6n21WVOr gWWg7ovKb/fCsgGeJ1rfjDGnT59FTIAgVo10Bh/tPaE7MobWalb0wNpJ8G+u+hWVObal p4og== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=16LZ6Jv3; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id p4-20020a056902114400b00d86688e5c24si17721863ybu.485.2023.10.26.07.51.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 26 Oct 2023 07:51:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20230601 header.b=16LZ6Jv3; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 516E5803D005; Thu, 26 Oct 2023 07:50:25 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235105AbjJZOtx (ORCPT + 99 others); Thu, 26 Oct 2023 10:49:53 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34998 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235101AbjJZOtu (ORCPT ); Thu, 26 Oct 2023 10:49:50 -0400 Received: from mail-qk1-x72f.google.com (mail-qk1-x72f.google.com [IPv6:2607:f8b0:4864:20::72f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D975C1705 for ; Thu, 26 Oct 2023 07:49:24 -0700 (PDT) Received: by mail-qk1-x72f.google.com with SMTP id af79cd13be357-7788ebea620so76775785a.3 for ; Thu, 26 Oct 2023 07:49:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1698331763; x=1698936563; darn=vger.kernel.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=/HMCohvCVUItBLSF49y4DS1f8h5XhHVmI3a8fPrH4+E=; b=16LZ6Jv3dCZJ/Fg6NaWqLUcU62gRAH19jnoAkh1QUK56NddZENOIIyTzQCahlGK3rG v91ddSoySBvA+v7d8Pmduu5a2yaHip0fwf5bIJpmkjYCKZOKEc0XET24X98+gzBARPiT qXzetYXchm1QukxbOhPEObUQKkyJ1E3jXBnAphYj2FKvqv3gNqB7/HjLGmHbvjMIbxoO hYBIB0NY1DjlQkgxBpFIT4p1tV1ZUssBAXGTFZPdxC079k1u1AoGohJI1ClMfPTFhy/B NjcHYj0h2q2PHHTv9C86BMCp/QrJr4oTwQBHiLXLwAWpLUts2SnghoORIwlVu+n8LO1l aImw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1698331763; x=1698936563; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=/HMCohvCVUItBLSF49y4DS1f8h5XhHVmI3a8fPrH4+E=; b=djSQ2XO2fPG6OQzARrCCQUn1wniuMh1bFCn774lQzk5S8seElN4OJbiE3NuSEdXruY XlA9T+hnNwVAH8qZJLHMX1Lsllz32eSe6QwERj6YDNAzFUSrWr06+gp3XroAdmWHS5uH So9B6R1lGLxZtXC8i8kHfWvih/k++zv1heUi7cY7YqHD52E2JIkPmokykFLWr5JarCEE Cj9IAMnTeHe3C8sA0lZ4eGcoKT02WhcnAvgHPcoJfosPn/f8njIE9SBEL4I/sSFRqQOi t6vFN3FKiz/Fu4OY6TM+OVS9pNcng1vv4S/IiNjfxBK4uD2bnUeZ5BfQpu2U7pr0A3wq Ie0g== X-Gm-Message-State: AOJu0YytpqLU8JFGjc+PGpINPSf8OPrm8nW/r1zUDcvIGZTAj5H0W22q GbL3ST1tZ82TKDxKoiWJmCLiYdHRTATHfYTD4tybnA== X-Received: by 2002:a05:6214:5093:b0:66d:2eb6:f3f6 with SMTP id kk19-20020a056214509300b0066d2eb6f3f6mr22576167qvb.32.1698331762820; Thu, 26 Oct 2023 07:49:22 -0700 (PDT) MIME-Version: 1.0 References: <20231026135912.1214302-1-glider@google.com> In-Reply-To: From: Alexander Potapenko Date: Thu, 26 Oct 2023 16:48:46 +0200 Message-ID: Subject: Re: [PATCH v10 1/2] lib/bitmap: add bitmap_{read,write}() To: Andy Shevchenko Cc: catalin.marinas@arm.com, will@kernel.org, pcc@google.com, andreyknvl@gmail.com, aleksander.lobakin@intel.com, linux@rasmusvillemoes.dk, yury.norov@gmail.com, alexandru.elisei@arm.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, eugenis@google.com, syednwaris@gmail.com, william.gray@linaro.org, Arnd Bergmann Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-8.4 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Thu, 26 Oct 2023 07:50:25 -0700 (PDT) > > Reviewed-by: Andy Shevchenko Thanks! > One nit below, though. > > ... > > > +/** > > + * bitmap_write - write n-bit value within a memory region > > + * @map: address to the bitmap memory region > > + * @value: value to write, clamped to nbits > > + * @start: bit offset of the n-bit value > > + * @nbits: size of value in bits, nonzero, up to BITS_PER_LONG. > > + * > > + * bitmap_write() behaves as-if implemented as @nbits calls of __assign_bit(), > > + * i.e. bits beyond @nbits are ignored: > > + * > > + * for (bit = 0; bit < nbits; bit++) > > + * __assign_bit(start + bit, bitmap, val & BIT(bit)); > > + * > > + * For @nbits > BITS_PER_LONG no writes are performed. > > nbits == 0 hasn't been mentioned. I can mention it explicitly, but it is already covered by the for-loop above: if nbits==0, no bits are assigned. > > (no, the main nit below) > > > + */ > > +static inline void bitmap_write(unsigned long *map, > > + unsigned long value, > > + unsigned long start, unsigned long nbits) > > While noticing strange indentation (you have space for the parameter on > the previous line, I believe I do not, maybe that's something on your side? There are tabs in the source, and in the original email. > I realized that this is a counter-intuitive interface. > Can you actually make value the last parameter? It is consistent with bitmap_set_value8(map, value, start), and in all the functions above @nbits is the last parameter.