Re: [PATCH] staging: r8188eu: Fix PPPoE tag insertion on big endian systems

From: Guenter Roeck
Date: Mon Apr 04 2022 - 10:07:28 EST


On 4/4/22 02:53, Dan Carpenter wrote:
On Sat, Apr 02, 2022 at 02:18:22PM -0700, Guenter Roeck wrote:
On 4/1/22 13:25, Larry Finger wrote:
On 4/1/22 14:25, Guenter Roeck wrote:
The rest of the code uses htons/ntohs, so I prefer to follow that lead.

You just proved my point. It is hard to get be16_to_cpu() wrong. Sparse will flag the error when you use cpu_to_be16() instead. I expect that your htons/ntohs problem would also have shown up with Sparse.


Ok, you made your point. I'll use be16_to_cpu() - the driver
already uses it elsewhere anyway. As for the other problems,
I am not sure if the driver ever worked. The function we are
looking at can't really have worked on a little endian system
because of the missing conversion, and the same is true for the
other code flagged by sparse. I think I'll just add a note
to this patch and let the driver authors decide what to do
about those problems.

Guenter

This is already fixed along with a couple related bugs in commit
2d959a842a8f ("staging: r8188eu: Fix sparse endianness warnings.").

https://lore.kernel.org/r/YkPK/QmLAp3BkygY@sckzor-linux.localdomain

It's in staging-next but hasn't hit linux-next yet.


Good to hear. Too bad I got it a minute too late - I just sent v3.

Guenter