[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <063D6719AE5E284EB5DD2968C1650D6DCFFCAB25@AcuExch.aculab.com>
Date: Mon, 10 Apr 2017 15:22:10 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Ursula Braun' <ubraun@...ux.vnet.ibm.com>,
"davem@...emloft.net" <davem@...emloft.net>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"linux-s390@...r.kernel.org" <linux-s390@...r.kernel.org>,
"jwi@...ux.vnet.ibm.com" <jwi@...ux.vnet.ibm.com>,
"schwidefsky@...ibm.com" <schwidefsky@...ibm.com>,
"heiko.carstens@...ibm.com" <heiko.carstens@...ibm.com>,
"raspl@...ux.vnet.ibm.com" <raspl@...ux.vnet.ibm.com>,
Hans Wippel <hwippel@...ux.vnet.ibm.com>,
"Julian Wiedmann" <jwi@...ux.vnet.ibm.com>
Subject: RE: [PATCH net-next 5/7] s390/qeth: improve endianness handling
From: Ursula Braun
> Sent: 07 April 2017 13:33
> On 04/07/2017 01:25 PM, David Laight wrote:
> > From: Ursula Braun
> >> Sent: 05 April 2017 09:40
> >> From: Hans Wippel <hwippel@...ux.vnet.ibm.com>
> >>
> >> Avoid endianness warnings reported by sparse by (1) using endianness
> >> conversions for assigning and using network packet fields, and (2)
> >> removing unnecessary endianness conversions from qeth_l3_rebuild_skb. No
> >> functional changes.
> >>
> >> Signed-off-by: Hans Wippel <hwippel@...ux.vnet.ibm.com>
> >> Signed-off-by: Ursula Braun <ubraun@...ux.vnet.ibm.com>
> >> ---
> >> drivers/s390/net/qeth_core.h | 4 ++--
> >> drivers/s390/net/qeth_core_main.c | 11 +++++-----
> >> drivers/s390/net/qeth_l3_main.c | 46 +++++++++++++++++++--------------------
> >> drivers/s390/net/qeth_l3_sys.c | 4 ++--
> >> 4 files changed, 33 insertions(+), 32 deletions(-)
> >>
> >> diff --git a/drivers/s390/net/qeth_core.h b/drivers/s390/net/qeth_core.h
> >> index 22aa2cd..6764ab9 100644
> >> --- a/drivers/s390/net/qeth_core.h
> >> +++ b/drivers/s390/net/qeth_core.h
> >> @@ -844,9 +844,9 @@ static inline int qeth_get_ip_version(struct sk_buff *skb)
> >> {
> >> __be16 *p = &((struct ethhdr *)skb->data)->h_proto;
> >>
> >> - if (*p == ETH_P_8021Q)
> >> + if (be16_to_cpu(*p) == ETH_P_8021Q)
> >> p += 2;
> >> - switch (*p) {
> >> + switch (be16_to_cpu(*p)) {
> >> case ETH_P_IPV6:
> >
> > These are definitely 'functional changes' on LE systems.
> s390 is Big Endian; thus the change is basicly a NOP.
> The only purpose of this kind of patches is getting rid
> of sparse warnings with our code.
Then say so in the commit message....
What you are really doing is fixing the code in case anyone tries
to use it on a LE system.
David
Powered by blists - more mailing lists