]> www.infradead.org Git - users/willy/xarray.git/commit
scripts: fix gfp-translate after ___GFP_*_BITS conversion to an enum
authorMarc Zyngier <maz@kernel.org>
Fri, 23 Aug 2024 16:38:50 +0000 (17:38 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 2 Sep 2024 00:59:01 +0000 (17:59 -0700)
commita3f6a89c834a4cba0f881da21307b26de3796133
tree976104e645baa7a527c5f0b9cba2b32328e793f5
parentbfe0857c20c663fcc1592fa4e3a61ca12b07dac9
scripts: fix gfp-translate after ___GFP_*_BITS conversion to an enum

Richard reports that since 772dd0342727c ("mm: enumerate all gfp flags"),
gfp-translate is broken, as the bit numbers are implicit, leaving the
shell script unable to extract them.  Even more, some bits are now at a
variable location, making it double extra hard to parse using a simple
shell script.

Use a brute-force approach to the problem by generating a small C stub
that will use the enum to dump the interesting bits.

As an added bonus, we are now able to identify invalid bits for a given
configuration.  As an added drawback, we cannot parse include files that
predate this change anymore.  Tough luck.

Link: https://lkml.kernel.org/r/20240823163850.3791201-1-maz@kernel.org
Fixes: 772dd0342727 ("mm: enumerate all gfp flags")
Signed-off-by: Marc Zyngier <maz@kernel.org>
Reported-by: Richard Weinberger <richard@nod.at>
Cc: Petr Tesařík <petr@tesarici.cz>
Cc: Suren Baghdasaryan <surenb@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
scripts/gfp-translate