> -----Original Message----- > From: Lobakin, Aleksander <[email protected]> > Sent: Thursday, August 8, 2024 5:25 AM > To: Polchlopek, Mateusz <[email protected]> > Cc: [email protected]; [email protected]; Keller, Jacob E > <[email protected]>; Drewek, Wojciech <[email protected]>; Sai > Krishna <[email protected]>; Simon Horman <[email protected]>; Zaki, > Ahmed <[email protected]> > Subject: Re: [Intel-wired-lan] [PATCH iwl-next v8 06/14] iavf: add initial > framework > for registering PTP clock > > From: Mateusz Polchlopek <[email protected]> > Date: Thu, 8 Aug 2024 13:04:29 +0200 > > > > > > > On 7/30/2024 3:40 PM, Alexander Lobakin wrote: > >> From: Mateusz Polchlopek <[email protected]> > >> Date: Tue, 30 Jul 2024 05:15:01 -0400 > > [...] > > >>> +bool iavf_ptp_cap_supported(struct iavf_adapter *adapter, u32 cap) > >>> +{ > >>> + if (!PTP_ALLOWED(adapter)) > >>> + return false; > >>> + > >>> + /* Only return true if every bit in cap is set in hw_caps.caps */ > >>> + return (adapter->ptp.hw_caps.caps & cap) == cap; > >> > >> Aren't these parenthesis redundant? > >> > > > > I think they are not. They wrap bit operation and also I checked it > > with checkpatch script and it doesn't complain about reduntant > > parenthesis. > > If the object code doesn't change when compiling without them, there are > no compiler complains etc, then they are :D checkpatch doesn't always > catch things, but I don't remember whether the compiler won't complain > or change the object code / logic. Could you please check? > > Thanks, > Olek
They may be technically redundant in that the parenthesis don't matter.. but sometimes they can help code legibility by making it more obvious to a human reviewer who isn't immediately going to think like a compiler and realize that & is not && for example...
