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 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0C493CCF9F8 for ; Thu, 6 Nov 2025 16:09:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=orqwsNoeIiwuhgIibXx/Bh7C5sPNZ0MPvpbit5jDoFw=; b=Bdi29J6RS3ddTX sIYnprfAWaM+Q+O04rGIaw36xwKp+2hVExbvE6kzJkqm+6JmxVRaI3Pm86RhIesKA1CJ03fNkEU+l 4lYYhRYc0graq1au7mkCYWWMjSI3NRb/N1vpR5KRLKv6Dih9Qrgk9pvoTirRbDeJb27KJVGkFuWPg JQHOhP6LQtNL1kcnWyt1SnrA43sGHeXopv9yOQZnMn+cguLcXnuL7zvoyibopJc9hnlpaEBG1NnbY V2/taXGYjfd0xQH0L3QaXx2RNbyAs2rndcD80qR5NHgeaAhX2rx6GanTRoui4IqdpcXT1GZIEZK50 eQhDsFS2efWi3TqhJnpA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1vH2YD-0000000Fsbn-1nLu; Thu, 06 Nov 2025 16:09:29 +0000 Received: from mgamail.intel.com ([192.198.163.14]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1vH2Y8-0000000Fsak-1yd4; Thu, 06 Nov 2025 16:09:27 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1762445364; x=1793981364; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=Vw8ubo+7N9WsgP5kvlylaSWSYsq/SxO6iOGciGtc5m0=; b=X8+pARvmhOxbnuMf5FOEsBU90rYYEZZHK1LMyDrxGZp7iq+ffUD80R7s sVgux1WrlB1Q63BnCk1AhBNZnUubKpvZIEciq+75zwaq2zpRIQ6o16xzR TYtYB0bM2oL/BamxgcQwLilc0yuJOVgwi5nR86It8hIC3X2Z0l88FeSvI Nr6qxFM2k41A+upzPTXT7jWTXUkrs2GrGvPWIRociqA172kOK7dkjT9Xa Z2nGAuM2Z2VEEkKXP267jxeMVln8p+9ee+SXotu9Yuw2lvd4VhIHuS/rD AVqEsenua6ZH7u9pftTMOfIWil2d9V4qOtLKsMa/WeZ+nXS0sUdTiOPiG Q==; X-CSE-ConnectionGUID: xxDZwUM9SgaeWrnJZtS8ug== X-CSE-MsgGUID: uySK41VRSDGfyLN0vWA+/w== X-IronPort-AV: E=McAfee;i="6800,10657,11604"; a="64623559" X-IronPort-AV: E=Sophos;i="6.19,284,1754982000"; d="scan'208";a="64623559" Received: from orviesa004.jf.intel.com ([10.64.159.144]) by fmvoesa108.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Nov 2025 08:09:23 -0800 X-CSE-ConnectionGUID: NMtAY4RTQwCRyv5pYJWnNw== X-CSE-MsgGUID: 7q5zGf4ISXWoFKQH6Cd2fQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.19,284,1754982000"; d="scan'208";a="192150660" Received: from abityuts-desk.ger.corp.intel.com (HELO ashevche-desk.local) ([10.245.244.224]) by orviesa004-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Nov 2025 08:09:11 -0800 Received: from andy by ashevche-desk.local with local (Exim 4.98.2) (envelope-from ) id 1vH2Xq-00000006Bqk-1JoP; Thu, 06 Nov 2025 18:09:06 +0200 Date: Thu, 6 Nov 2025 18:09:06 +0200 From: Andy Shevchenko To: Geert Uytterhoeven Cc: Yury Norov , Michael Turquette , Stephen Boyd , Nicolas Ferre , Alexandre Belloni , Claudiu Beznea , Giovanni Cabiddu , Herbert Xu , David Miller , Linus Walleij , Bartosz Golaszewski , Joel Stanley , Andrew Jeffery , Crt Mori , Jonathan Cameron , Lars-Peter Clausen , Jacky Huang , Shan-Chun Hung , Rasmus Villemoes , Jaroslav Kysela , Takashi Iwai , Johannes Berg , Jakub Kicinski , Alex Elder , David Laight , Vincent Mailhol , Jason Baron , Borislav Petkov , Tony Luck , Michael Hennerich , Kim Seer Paller , David Lechner , Nuno =?iso-8859-1?Q?S=E1?= , Andy Shevchenko , Richard Genoud , Cosmin Tanislav , Biju Das , Jianping Shen , Nathan Chancellor , Nick Desaulniers , Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , linux-clk@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-renesas-soc@vger.kernel.org, linux-crypto@vger.kernel.org, linux-edac@vger.kernel.org, qat-linux@intel.com, linux-gpio@vger.kernel.org, linux-aspeed@lists.ozlabs.org, linux-iio@vger.kernel.org, linux-sound@vger.kernel.org, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v6 12/26] bitfield: Add less-checking __FIELD_{GET,PREP}() Message-ID: References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - c/o Alberga Business Park, 6 krs, Bertel Jungin Aukio 5, 02600 Espoo X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20251106_080924_569887_6DE3A593 X-CRM114-Status: GOOD ( 22.82 ) X-BeenThere: linux-mtd@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Linux MTD discussion mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-mtd" Errors-To: linux-mtd-bounces+linux-mtd=archiver.kernel.org@lists.infradead.org On Thu, Nov 06, 2025 at 03:49:03PM +0100, Geert Uytterhoeven wrote: > Hi Andy, > > On Thu, 6 Nov 2025 at 15:44, Andy Shevchenko > wrote: > > On Thu, Nov 06, 2025 at 02:34:00PM +0100, Geert Uytterhoeven wrote: > > > The BUILD_BUG_ON_MSG() check against "~0ull" works only with "unsigned > > > (long) long" _mask types. For constant masks, that condition is usually > > > met, as GENMASK() yields an UL value. The few places where the > > > constant mask is stored in an intermediate variable were fixed by > > > changing the variable type to u64 (see e.g. [1] and [2]). > > > > > > However, for non-constant masks, smaller unsigned types should be valid, > > > too, but currently lead to "result of comparison of constant > > > 18446744073709551615 with expression of type ... is always > > > false"-warnings with clang and W=1. > > > > > > Hence refactor the __BF_FIELD_CHECK() helper, and factor out > > > __FIELD_{GET,PREP}(). The later lack the single problematic check, but > > > are otherwise identical to FIELD_{GET,PREP}(), and are intended to be > > > used in the fully non-const variants later. > > > > > > [1] commit 5c667d5a5a3ec166 ("clk: sp7021: Adjust width of _m in > > > HWM_FIELD_PREP()") > > > [2] commit cfd6fb45cfaf46fa ("crypto: ccree - avoid out-of-range > > > warnings from clang") > > > > Also can be made as > > > > Link: https://git.kernel.org/torvalds/c/5c667d5a5a3ec166 [1] > > Nooooh... torvalds might click on it, and complain ;-) See my reply to Yury. > > > + BUILD_BUG_ON_MSG(__bf_cast_unsigned(mask, mask) > \ > > > + __bf_cast_unsigned(reg, ~0ull), \ > > > + pfx "type of reg too small for mask") > > > > Perhaps we may convert this (and others?) to static_assert():s at some point? > > Nick tried that before, without success: > https://lore.kernel.org/all/CAKwvOdm_prtk1UQNJQGidZm44Lk582S3p=of0y46+rVjnSgXJg@mail.gmail.com Ah, this is unfortunate. -- With Best Regards, Andy Shevchenko ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/