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
next prev parent 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox