Subject: Re: [PATCH net-next 3/3] eth: bnxt: handle invalid Tx completions more gracefully

From: Jakub Kicinski <[email-masked]>
Date: Wed, 12 Jul 2023 09:34:18 -0700

On Wed, 12 Jul 2023 08:50:06 +0200 Paolo Abeni wrote:
> Surely not a big deal. But some users (possibly most of them!) have
> older compiler.

I checked GCC 10 and GCC 9, and the code is the same :(
Any idea on how old do we need to go?

> Including an assignment in the test code, I get this
> additional difference:
> 
> -   c:	80 4b 09 01          	orb    $0x1,0x9(%rbx)
> +   c:	c6 43 09 01          	movb   $0x1,0x9(%rbx)
> 
> with the bitfield using the 'or' operation. Not a big deal, but the
> other option is slightly better ;)

Is there really any difference whether one changes a byte or ors
in a bit? Either way it's a partial update of a word.

multi-bit fields may be harder for the compiler, especially weirdly
aligned but for trivial single bit values I think we may be overly
cautious.