Re: [PATCH net-next 1/2 v2] tools: ynl-gen: fix enum index in _decode_enum(..)

From: Jakub Kicinski
Date: Thu Jul 13 2023 - 12:02:48 EST


On Thu, 13 Jul 2023 11:05:49 +0200 Arkadiusz Kubalewski wrote:
> - i = attr_spec.get('value-start', 0)
> if 'enum-as-flags' in attr_spec and attr_spec['enum-as-flags']:
> value = set()
> while raw:
> if raw & 1:
> - value.add(enum.entries_by_val[i].name)
> + value.add(enum.entries_by_val[raw & 1].name)
> raw >>= 1
> - i += 1

This doesn't make sense, as I suggested you need to keep i for this
loop. Move it to the inside of the if 'enum-as-fla... and init to 0.

i is tracking which bit number we are at as we consume / shift out
bits from raw.

Have you ever used ChatGPT? No shame, just curious.
--
pw-bot: cr