All of lore.kernel.org
 help / color / mirror / Atom feed
From: Larry Finger <Larry.Finger@lwfinger.net>
To: Punit Vara <punitvara@gmail.com>
Cc: gregkh@linuxfoundation.org, stillcompiling@gmail.com,
	sudipm.mukherjee@gmail.com, dan.carpenter@oracle.com,
	dogukan.ergun@gmail.com, Julia.Lawall@lip6.fr,
	devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/4] Staging: rtl8712: Use ether_addr_equal() over memcmp()
Date: Sat, 10 Oct 2015 12:34:54 -0500	[thread overview]
Message-ID: <56194C3E.2000905@lwfinger.net> (raw)
In-Reply-To: <1444496322-3648-3-git-send-email-punitvara@gmail.com>

On 10/10/2015 11:58 AM, Punit Vara wrote:
> This patch is to the rtl871x_ioctl_linux.c file that fixes up following
> warning reported by checkpatch.pl :
>
> -Prefer ether_addr_equal() or ether_addr_equal_unaligned() over memcmp()
>
> bssid has datatype u8 and pnetwork->network.MacAddress has data type
>   unsigned char.
>
> Signed-off-by: Punit Vara <punitvara@gmail.com>
> ---
>   drivers/staging/rtl8712/rtl871x_ioctl_linux.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> index 2ba055d..1c9092e 100644
> --- a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> +++ b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> @@ -2007,7 +2007,7 @@ static int r871x_get_ap_info(struct net_device *dev,
>   			return -EINVAL;
>   		}
>   		netdev_info(dev, "r8712u: BSSID:%pM\n", bssid);
> -		if (!memcmp(bssid, pnetwork->network.MacAddress, ETH_ALEN)) {
> +		if (!ether_addr_equal(bssid, pnetwork->network)) {
>   			/* BSSID match, then check if supporting wpa/wpa2 */
>   			pbuf = r8712_get_wpa_ie(&pnetwork->network.IEs[12],
>   			       &wpa_ielen, pnetwork->network.IELength-12);
>

The types of the variables are not what is important - it is the alignment!

I suggest that you read the definition of ether_addr_equal() and consider what 
happens if either of the two addresses is not aligned to u16!

You also have a logic error. Routine memcmp() returns zero when the two 
arguments are equal. Thus !memcmp() will be true when they are equal. Routine 
ether_addr_equal() returns true when the arguments are equal. Whenever !memcmp() 
is correct and the arguments are aligned, then you need to replace it with 
ether_addr_equal().

The checkpatch script is a good tool for locating things to be changed; however, 
if the change is other than cosmetic, you *MUST THINK* about what is happening. 
Yes, rtl8712 is ugly code, but it works. Please do not break it.

NACK.

Larry


  reply	other threads:[~2015-10-10 17:34 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-10 16:58 [PATCH 0/4] Staging: rtl8712: Fix coding style warnings Punit Vara
2015-10-10 16:58 ` [PATCH 1/4] Staging: rtl8712: Fix warning prefer eth_broadcast_addr() over memset() Punit Vara
2015-10-10 16:58 ` [PATCH 2/4] Staging: rtl8712: Use ether_addr_equal() over memcmp() Punit Vara
2015-10-10 17:34   ` Larry Finger [this message]
2015-10-10 19:47     ` punit vara
2015-10-10 19:50       ` Julia Lawall
2015-10-10 20:22         ` punit vara
2015-10-10 20:26           ` punit vara
2015-10-10 23:59   ` kbuild test robot
2015-10-11  0:37   ` kbuild test robot
2015-10-11 11:12     ` punit vara
2015-10-11 17:23       ` Joe Perches
2015-10-10 16:58 ` [PATCH 3/4] Staging: rtl8712: Coding style warnings fix for block comments Punit Vara
2015-10-10 16:58 ` [PATCH 4/4] Staging: rtl8712: fix warning for placing constant on the right side of test Punit Vara
2015-10-10 17:07   ` Julia Lawall
2015-10-10 19:52     ` punit vara

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56194C3E.2000905@lwfinger.net \
    --to=larry.finger@lwfinger.net \
    --cc=Julia.Lawall@lip6.fr \
    --cc=dan.carpenter@oracle.com \
    --cc=devel@driverdev.osuosl.org \
    --cc=dogukan.ergun@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=punitvara@gmail.com \
    --cc=stillcompiling@gmail.com \
    --cc=sudipm.mukherjee@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.