On Thu, Apr 20, 2023 at 07:58:52PM +0300, Vladimir Oltean wrote:
On Thu, Apr 20, 2023 at 04:38:00PM +0200, Simon Horman wrote:
- if (hw->port && !!(priv->si->hw_features & ENETC_SI_F_QBU))
nit: I think you could make the condition.
if (hw->port && priv->si->hw_features & ENETC_SI_F_QBU)
which would be consistent with the condition in the next hunk.
- if (priv->si->hw_features & ENETC_SI_F_QBU) {
Maybe, but it generates the exact same object code (tested with "make drivers/net/ethernet/freescale/enetc/enetc_ethtool.lst").
When I'm debugging, I'm a bit of a conspiracy theorist when it comes to operator precedence (& vs &&), and so, "A && B & C" doesn't read particularly well to me, and would be one of my first suspects at hiding a bug. I do know it would have worked in this case though, and that modern gcc/clang usually complains about suspicious/ unintuitive precedence.
Thanks, I guess it's subjective. And I do understand your point regarding & vs &&.
No need to resend because of this (or update the code at all if that is your choice).