* [PATCH] Staging: rtl8712: replace memcpy with ether_addr_copy
@ 2015-03-14 13:17 Haneen Mohammed
2015-03-16 14:47 ` [Outreachy kernel] " Greg KH
0 siblings, 1 reply; 4+ messages in thread
From: Haneen Mohammed @ 2015-03-14 13:17 UTC (permalink / raw)
To: outreachy-kernel; +Cc: Haneen Mohammed
This patch replace memcpy with ethe_addr_copy to address the following
warning generated by checkpatch.pl: ""Prefer ether_addr_copy over memcpy
if the Ethernet addresses are __aligned(2)"
Follwoing is the output of pahole for the relevant datastructures:
1- for "iwe.u.ap_addr.sa_data" and "wrqu->ap_addr.sa_data"
struct sockaddr {
sa_family_t sa_family; /* 0 2
*/
char sa_data[14]; /* 2 14
*/
/* size: 16, cachelines: 1, members: 2 */
/* last cacheline: 16 bytes */
};
struct iw_event {
__u16 len; /* 0 2
*/
__u16 cmd; /* 2 2
*/
/* XXX 4 bytes hole, try to pack */
union iwreq_data u; /* 8 16
*/
/* size: 24, cachelines: 1, members: 3 */
/* sum members: 20, holes: 1, sum holes: 4 */
/* last cacheline: 24 bytes */
};
2- for "pnetwork->network.MacAddress" and "pcur_bss->MacAddress"
struct wlan_network {
struct list_head list; /* 0 16
*/
int network_type; /* 16 4
*/
int fixed; /* 20 4
*/
unsigned int last_scanned; /* 24 4
*/
int aid; /* 28 4
*/
int join_res; /* 32 4
*/
struct ndis_wlan_bssid_ex network; /* 36 884
*/
/* --- cacheline 14 boundary (896 bytes) was 24 bytes ago --- */
/* size: 920, cachelines: 15, members: 7 */
/* last cacheline: 24 bytes */
};
struct ndis_wlan_bssid_ex {
u32 Length; /* 0 4
*/
unsigned char MacAddress[6]; /* 4 6
*/
u8 Reserved[2]; /* 10 2
*/
struct ndis_802_11_ssid Ssid; /* 12 36
*/
u32 Privacy; /* 48 4
*/
s32 Rssi; /* 52 4
*/
enum NDIS_802_11_NETWORK_TYPE NetworkTypeInUse; /* 56 4
*/
struct NDIS_802_11_CONFIGURATION Configuration; /* 60 32
*/
/* --- cacheline 1 boundary (64 bytes) was 28 bytes ago --- */
enum NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode; /*
92 4 */
NDIS_802_11_RATES_EX SupportedRates; /* 96 16
*/
u32 IELength; /* 112 4
*/
u8 IEs[768]; /* 116 768
*/
/* --- cacheline 13 boundary (832 bytes) was 52 bytes ago --- */
/* size: 884, cachelines: 14, members: 12 */
/* last cacheline: 52 bytes */
};
Signed-off-by: Haneen Mohammed <hamohammed.sa@gmail.com>
---
drivers/staging/rtl8712/rtl871x_ioctl_linux.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
index eacba8c..81f39c3 100644
--- a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
+++ b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
@@ -185,7 +185,7 @@ static inline char *translate_scan(struct _adapter *padapter,
/* AP MAC address */
iwe.cmd = SIOCGIWAP;
iwe.u.ap_addr.sa_family = ARPHRD_ETHER;
- memcpy(iwe.u.ap_addr.sa_data, pnetwork->network.MacAddress, ETH_ALEN);
+ ether_addr_copy(iwe.u.ap_addr.sa_data, pnetwork->network.MacAddress);
start = iwe_stream_add_event(info, start, stop, &iwe, IW_EV_ADDR_LEN);
/* Add the ESSID */
iwe.cmd = SIOCGIWESSID;
@@ -1117,7 +1117,7 @@ static int r8711_wx_get_wap(struct net_device *dev,
wrqu->ap_addr.sa_family = ARPHRD_ETHER;
if (check_fwstate(pmlmepriv, _FW_LINKED | WIFI_ADHOC_MASTER_STATE |
WIFI_AP_STATE))
- memcpy(wrqu->ap_addr.sa_data, pcur_bss->MacAddress, ETH_ALEN);
+ ether_addr_copy(wrqu->ap_addr.sa_data, pcur_bss->MacAddress);
else
eth_zero_addr(wrqu->ap_addr.sa_data);
return 0;
--
1.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Outreachy kernel] [PATCH] Staging: rtl8712: replace memcpy with ether_addr_copy
2015-03-14 13:17 [PATCH] Staging: rtl8712: replace memcpy with ether_addr_copy Haneen Mohammed
@ 2015-03-16 14:47 ` Greg KH
2015-03-16 15:41 ` [PATCH v2] " Haneen Mohammed
0 siblings, 1 reply; 4+ messages in thread
From: Greg KH @ 2015-03-16 14:47 UTC (permalink / raw)
To: Haneen Mohammed; +Cc: outreachy-kernel
On Sat, Mar 14, 2015 at 04:17:04PM +0300, Haneen Mohammed wrote:
> This patch replace memcpy with ethe_addr_copy to address the following
> warning generated by checkpatch.pl: ""Prefer ether_addr_copy over memcpy
> if the Ethernet addresses are __aligned(2)"
>
> Follwoing is the output of pahole for the relevant datastructures:
> 1- for "iwe.u.ap_addr.sa_data" and "wrqu->ap_addr.sa_data"
>
> struct sockaddr {
> sa_family_t sa_family; /* 0 2
> */
> char sa_data[14]; /* 2 14
> */
Your lines are wrapped here very oddly. Please fix that up and resend.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2] Staging: rtl8712: replace memcpy with ether_addr_copy
2015-03-16 14:47 ` [Outreachy kernel] " Greg KH
@ 2015-03-16 15:41 ` Haneen Mohammed
2015-03-17 15:35 ` [Outreachy kernel] " Jes Sorensen
0 siblings, 1 reply; 4+ messages in thread
From: Haneen Mohammed @ 2015-03-16 15:41 UTC (permalink / raw)
To: outreachy-kernel; +Cc: Haneen Mohammed
This patch replace memcpy with ethe_addr_copy to address the following
warning generated by checkpatch.pl: ""Prefer ether_addr_copy over memcpy
if the Ethernet addresses are __aligned(2)"
Follwoing is the output of pahole for the relevant datastructures:
1- for "iwe.u.ap_addr.sa_data" and "wrqu->ap_addr.sa_data"
struct sockaddr {
sa_family_t sa_family; /* 0 2 */
char sa_data[14]; /* 2 14 */
/* size: 16, cachelines: 1, members: 2 */
/* last cacheline: 16 bytes */
};
struct iw_event {
__u16 len; /* 0 2 */
__u16 cmd; /* 2 2 */
/* XXX 4 bytes hole, try to pack */
union iwreq_data u; /* 8 16 */
/* size: 24, cachelines: 1, members: 3 */
/* sum members: 20, holes: 1, sum holes: 4 */
/* last cacheline: 24 bytes */
};
2- for "pnetwork->network.MacAddress" and "pcur_bss->MacAddress"
struct wlan_network {
struct list_head list; /* 0 16 */
int network_type; /* 16 4 */
int fixed; /* 20 4 */
unsigned int last_scanned; /* 24 4 */
int aid; /* 28 4 */
int join_res; /* 32 4 */
struct ndis_wlan_bssid_ex network; /* 36 884 */
/* --- cacheline 14 boundary (896 bytes) was 24 bytes ago --- */
/* size: 920, cachelines: 15, members: 7 */
/* last cacheline: 24 bytes */
};
struct ndis_wlan_bssid_ex {
u32 Length; /* 0 4 */
unsigned char MacAddress[6]; /* 4 6 */
u8 Reserved[2]; /* 10 2 */
struct ndis_802_11_ssid Ssid; /* 12 36 */
u32 Privacy; /* 48 4 */
s32 Rssi; /* 52 4 */
enum NDIS_802_11_NETWORK_TYPE NetworkTypeInUse; /* 56 4 */
struct NDIS_802_11_CONFIGURATION Configuration; /* 60 32 */
/* --- cacheline 1 boundary (64 bytes) was 28 bytes ago --- */
enum NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode; /* 92 4 */
NDIS_802_11_RATES_EX SupportedRates; /* 96 16 */
u32 IELength; /* 112 4 */
u8 IEs[768]; /* 116 768 */
/* --- cacheline 13 boundary (832 bytes) was 52 bytes ago --- */
/* size: 884, cachelines: 14, members: 12 */
/* last cacheline: 52 bytes */
};
Signed-off-by: Haneen Mohammed <hamohammed.sa@gmail.com>
---
v2: fix commit msg
drivers/staging/rtl8712/rtl871x_ioctl_linux.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
index eacba8c..81f39c3 100644
--- a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
+++ b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
@@ -185,7 +185,7 @@ static inline char *translate_scan(struct _adapter *padapter,
/* AP MAC address */
iwe.cmd = SIOCGIWAP;
iwe.u.ap_addr.sa_family = ARPHRD_ETHER;
- memcpy(iwe.u.ap_addr.sa_data, pnetwork->network.MacAddress, ETH_ALEN);
+ ether_addr_copy(iwe.u.ap_addr.sa_data, pnetwork->network.MacAddress);
start = iwe_stream_add_event(info, start, stop, &iwe, IW_EV_ADDR_LEN);
/* Add the ESSID */
iwe.cmd = SIOCGIWESSID;
@@ -1117,7 +1117,7 @@ static int r8711_wx_get_wap(struct net_device *dev,
wrqu->ap_addr.sa_family = ARPHRD_ETHER;
if (check_fwstate(pmlmepriv, _FW_LINKED | WIFI_ADHOC_MASTER_STATE |
WIFI_AP_STATE))
- memcpy(wrqu->ap_addr.sa_data, pcur_bss->MacAddress, ETH_ALEN);
+ ether_addr_copy(wrqu->ap_addr.sa_data, pcur_bss->MacAddress);
else
eth_zero_addr(wrqu->ap_addr.sa_data);
return 0;
--
1.9.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [Outreachy kernel] [PATCH v2] Staging: rtl8712: replace memcpy with ether_addr_copy
2015-03-16 15:41 ` [PATCH v2] " Haneen Mohammed
@ 2015-03-17 15:35 ` Jes Sorensen
0 siblings, 0 replies; 4+ messages in thread
From: Jes Sorensen @ 2015-03-17 15:35 UTC (permalink / raw)
To: Haneen Mohammed, outreachy-kernel
On 03/16/15 11:41, Haneen Mohammed wrote:
> This patch replace memcpy with ethe_addr_copy to address the following
> warning generated by checkpatch.pl: ""Prefer ether_addr_copy over memcpy
> if the Ethernet addresses are __aligned(2)"
>
> Follwoing is the output of pahole for the relevant datastructures:
> 1- for "iwe.u.ap_addr.sa_data" and "wrqu->ap_addr.sa_data"
>
> struct sockaddr {
> sa_family_t sa_family; /* 0 2 */
> char sa_data[14]; /* 2 14 */
>
> /* size: 16, cachelines: 1, members: 2 */
> /* last cacheline: 16 bytes */
> };
>
> struct iw_event {
> __u16 len; /* 0 2 */
> __u16 cmd; /* 2 2 */
>
> /* XXX 4 bytes hole, try to pack */
>
> union iwreq_data u; /* 8 16 */
>
> /* size: 24, cachelines: 1, members: 3 */
> /* sum members: 20, holes: 1, sum holes: 4 */
> /* last cacheline: 24 bytes */
> };
>
> 2- for "pnetwork->network.MacAddress" and "pcur_bss->MacAddress"
>
> struct wlan_network {
> struct list_head list; /* 0 16 */
> int network_type; /* 16 4 */
> int fixed; /* 20 4 */
> unsigned int last_scanned; /* 24 4 */
> int aid; /* 28 4 */
> int join_res; /* 32 4 */
> struct ndis_wlan_bssid_ex network; /* 36 884 */
> /* --- cacheline 14 boundary (896 bytes) was 24 bytes ago --- */
>
> /* size: 920, cachelines: 15, members: 7 */
> /* last cacheline: 24 bytes */
> };
>
> struct ndis_wlan_bssid_ex {
> u32 Length; /* 0 4 */
> unsigned char MacAddress[6]; /* 4 6 */
> u8 Reserved[2]; /* 10 2 */
> struct ndis_802_11_ssid Ssid; /* 12 36 */
> u32 Privacy; /* 48 4 */
> s32 Rssi; /* 52 4 */
> enum NDIS_802_11_NETWORK_TYPE NetworkTypeInUse; /* 56 4 */
> struct NDIS_802_11_CONFIGURATION Configuration; /* 60 32 */
> /* --- cacheline 1 boundary (64 bytes) was 28 bytes ago --- */
> enum NDIS_802_11_NETWORK_INFRASTRUCTURE InfrastructureMode; /* 92 4 */
> NDIS_802_11_RATES_EX SupportedRates; /* 96 16 */
> u32 IELength; /* 112 4 */
> u8 IEs[768]; /* 116 768 */
> /* --- cacheline 13 boundary (832 bytes) was 52 bytes ago --- */
>
> /* size: 884, cachelines: 14, members: 12 */
> /* last cacheline: 52 bytes */
> };
>
> Signed-off-by: Haneen Mohammed <hamohammed.sa@gmail.com>
> ---
> v2: fix commit msg
>
> drivers/staging/rtl8712/rtl871x_ioctl_linux.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
This looks good!
Jes
> diff --git a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> index eacba8c..81f39c3 100644
> --- a/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> +++ b/drivers/staging/rtl8712/rtl871x_ioctl_linux.c
> @@ -185,7 +185,7 @@ static inline char *translate_scan(struct _adapter *padapter,
> /* AP MAC address */
> iwe.cmd = SIOCGIWAP;
> iwe.u.ap_addr.sa_family = ARPHRD_ETHER;
> - memcpy(iwe.u.ap_addr.sa_data, pnetwork->network.MacAddress, ETH_ALEN);
> + ether_addr_copy(iwe.u.ap_addr.sa_data, pnetwork->network.MacAddress);
> start = iwe_stream_add_event(info, start, stop, &iwe, IW_EV_ADDR_LEN);
> /* Add the ESSID */
> iwe.cmd = SIOCGIWESSID;
> @@ -1117,7 +1117,7 @@ static int r8711_wx_get_wap(struct net_device *dev,
> wrqu->ap_addr.sa_family = ARPHRD_ETHER;
> if (check_fwstate(pmlmepriv, _FW_LINKED | WIFI_ADHOC_MASTER_STATE |
> WIFI_AP_STATE))
> - memcpy(wrqu->ap_addr.sa_data, pcur_bss->MacAddress, ETH_ALEN);
> + ether_addr_copy(wrqu->ap_addr.sa_data, pcur_bss->MacAddress);
> else
> eth_zero_addr(wrqu->ap_addr.sa_data);
> return 0;
>
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-03-17 15:35 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-14 13:17 [PATCH] Staging: rtl8712: replace memcpy with ether_addr_copy Haneen Mohammed
2015-03-16 14:47 ` [Outreachy kernel] " Greg KH
2015-03-16 15:41 ` [PATCH v2] " Haneen Mohammed
2015-03-17 15:35 ` [Outreachy kernel] " Jes Sorensen
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.