Thread (20 messages) 20 messages, 5 authors, 2021-08-23

RE: [PATCH v2 2/5] staging: r8188eu: cast to restricted __be32

From: David Laight <hidden>
Date: 2021-08-22 21:30:53
Also in: lkml

From: Larry Finger
Sent: 20 August 2021 22:45

On 8/19/21 3:17 AM, Aakash Hemadri wrote:
quoted
Fix sparse warning:
quoted
rtw_br_ext.c:836:54: warning: cast to restricted __be32
Unnecessary double cast, remove them.

Signed-off-by: Aakash Hemadri <redacted>
---
  drivers/staging/r8188eu/core/rtw_br_ext.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/staging/r8188eu/core/rtw_br_ext.c b/drivers/staging/r8188eu/core/rtw_br_ext.c
index 404fa8904e47..6a0462ce6230 100644
--- a/drivers/staging/r8188eu/core/rtw_br_ext.c
+++ b/drivers/staging/r8188eu/core/rtw_br_ext.c
@@ -671,7 +671,7 @@ void dhcp_flag_bcast(struct adapter *priv, struct sk_buff *skb)
  				    (udph->dest == __constant_htons(SERVER_PORT))) { /*  DHCP request */
  					struct dhcpMessage *dhcph =
  						(struct dhcpMessage *)((size_t)udph + sizeof(struct udphdr));
-					u32 cookie = be32_to_cpu((__be32)dhcph->cookie);
+					u32 cookie = dhcph->cookie;

  					if (cookie == DHCP_MAGIC) { /*  match magic word */
  						if (!(dhcph->flags & htons(BROADCAST_FLAG))) {
This patch is wrong. All the documentation I could find tells me that the
multi-byte entries in dhcph are big-endian, thus the new line should read:

					u32 cookie = be32_to_cpu(dhcph->cookie);
Modulo anything that really means it should get_unaligned_be32().

	David

-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help