lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150121164458.GA10302@lin-535U4C>
Date:	Wed, 21 Jan 2015 18:44:58 +0200
From:	Lin Kassem <linsara1@...il.com>
To:	devel@...verdev.osuosl.org
Cc:	forest@...ttletooquiet.net, gregkh@...uxfoundation.org,
	tvboxspy@...il.com, linux-kernel@...r.kernel.org
Subject: [PATCH] staging: vt6656: fix Prefer ether_addr_copy() over memcpy()
 if the Ethernet addresses are __aligned(2)

This patch fixes the following checkpatch.pl warning:
fix Prefer ether_addr_copy() over memcpy() 
if the Ethernet addresses are __aligned(2)

Pahole showed that the 2 structs are aligned to u16

struct ieee80211_hdr {
	__le16                     frame_control;        /*     0     2 */
	__le16                     duration_id;          /*     2     2 */
	u8                         addr1[6];             /*     4     6 */
	u8                         addr2[6];             /*    10     6 */
	u8                         addr3[6];             /*    16     6 */
	__le16                     seq_ctrl;             /*    22     2 */
	u8                         addr4[6];             /*    24     6 */

	/* size: 30, cachelines: 1, members: 7 */
	/* last cacheline: 30 bytes */
};

struct vnt_mic_hdr {
	u8                         id;                   /*     0     1 */
	u8                         tx_priority;          /*     1     1 */
	u8                         mic_addr2[6];         /*     2     6 */
	u8                         ccmp_pn[6];           /*     8     6 */
	__be16                     payload_len;          /*    14     2 */
	__be16                     hlen;                 /*    16     2 */
	__le16                     frame_control;        /*    18     2 */
	u8                         addr1[6];             /*    20     6 */
	u8                         addr2[6];             /*    26     6 */
	u8                         addr3[6];             /*    32     6 */
	__le16                     seq_ctrl;             /*    38     2 */
	u8                         addr4[6];             /*    40     6 */
	u16                        packing;              /*    46     2 */

	/* size: 48, cachelines: 1, members: 13 */
	/* last cacheline: 48 bytes */
};

Signed-off-by: Lin Kassem <linsara1@...il.com>
---
 drivers/staging/vt6656/rxtx.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/staging/vt6656/rxtx.c b/drivers/staging/vt6656/rxtx.c
index bb6a4d4..c202147 100644
--- a/drivers/staging/vt6656/rxtx.c
+++ b/drivers/staging/vt6656/rxtx.c
@@ -749,7 +749,7 @@ static void vnt_fill_txkey(struct vnt_usb_send_context *tx_context,
 		else
 			mic_hdr->hlen = cpu_to_be16(22);
 
-		memcpy(mic_hdr->addr1, hdr->addr1, ETH_ALEN);
+		ether_addr_copy(mic_hdr->addr1, hdr->addr1);
 		memcpy(mic_hdr->addr2, hdr->addr2, ETH_ALEN);
 		memcpy(mic_hdr->addr3, hdr->addr3, ETH_ALEN);
 
-- 
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ