diff mbox

[6/7] sctp: Correct access to skb->{network,transport}_header

Message ID 1369805268-6291-7-git-send-email-horms@verge.net.au
State Superseded, archived
Delegated to: David Miller
Headers show

Commit Message

Simon Horman May 29, 2013, 5:27 a.m. UTC
This corrects an regression introduced by "net: Use 16bits for *_headers
fields of struct skbuff" when NET_SKBUFF_DATA_USES_OFFSET is not set. In
that case sk_buff_data_t will be a pointer, however,
skb->{network,transport}_header is now __u16.

Signed-off-by: Simon Horman <horms@verge.net.au>
---
 net/sctp/input.c |    2 +-
 net/sctp/ipv6.c  |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

Comments

Ben Hutchings May 29, 2013, 7:31 p.m. UTC | #1
On Wed, 2013-05-29 at 14:27 +0900, Simon Horman wrote:
> This corrects an regression introduced by "net: Use 16bits for *_headers
> fields of struct skbuff" when NET_SKBUFF_DATA_USES_OFFSET is not set.

So how about adding 'typedef u16 sk_buff_data_t;'?

> In
> that case sk_buff_data_t will be a pointer, however,
> skb->{network,transport}_header is now __u16.
> 
> Signed-off-by: Simon Horman <horms@verge.net.au>
> ---
>  net/sctp/input.c |    2 +-
>  net/sctp/ipv6.c  |    2 +-
>  2 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/net/sctp/input.c b/net/sctp/input.c
> index 4b2c831..e328fe8 100644
> --- a/net/sctp/input.c
> +++ b/net/sctp/input.c
> @@ -589,7 +589,7 @@ void sctp_v4_err(struct sk_buff *skb, __u32 info)
>  	struct sctp_association *asoc = NULL;
>  	struct sctp_transport *transport;
>  	struct inet_sock *inet;
> -	sk_buff_data_t saveip, savesctp;
> +	__be16 saveip, savesctp;
[...]

__be16??

Ben.
Simon Horman May 31, 2013, 6:21 a.m. UTC | #2
On Wed, May 29, 2013 at 08:31:12PM +0100, Ben Hutchings wrote:
> On Wed, 2013-05-29 at 14:27 +0900, Simon Horman wrote:
> > This corrects an regression introduced by "net: Use 16bits for *_headers
> > fields of struct skbuff" when NET_SKBUFF_DATA_USES_OFFSET is not set.
> 
> So how about adding 'typedef u16 sk_buff_data_t;'?
> 
> > In
> > that case sk_buff_data_t will be a pointer, however,
> > skb->{network,transport}_header is now __u16.
> > 
> > Signed-off-by: Simon Horman <horms@verge.net.au>
> > ---
> >  net/sctp/input.c |    2 +-
> >  net/sctp/ipv6.c  |    2 +-
> >  2 files changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/net/sctp/input.c b/net/sctp/input.c
> > index 4b2c831..e328fe8 100644
> > --- a/net/sctp/input.c
> > +++ b/net/sctp/input.c
> > @@ -589,7 +589,7 @@ void sctp_v4_err(struct sk_buff *skb, __u32 info)
> >  	struct sctp_association *asoc = NULL;
> >  	struct sctp_transport *transport;
> >  	struct inet_sock *inet;
> > -	sk_buff_data_t saveip, savesctp;
> > +	__be16 saveip, savesctp;
> [...]
> 
> __be16??

Ooops. I will fix that.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/sctp/input.c b/net/sctp/input.c
index 4b2c831..e328fe8 100644
--- a/net/sctp/input.c
+++ b/net/sctp/input.c
@@ -589,7 +589,7 @@  void sctp_v4_err(struct sk_buff *skb, __u32 info)
 	struct sctp_association *asoc = NULL;
 	struct sctp_transport *transport;
 	struct inet_sock *inet;
-	sk_buff_data_t saveip, savesctp;
+	__be16 saveip, savesctp;
 	int err;
 	struct net *net = dev_net(skb->dev);
 
diff --git a/net/sctp/ipv6.c b/net/sctp/ipv6.c
index 391a245..8ee553b 100644
--- a/net/sctp/ipv6.c
+++ b/net/sctp/ipv6.c
@@ -153,7 +153,7 @@  SCTP_STATIC void sctp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
 	struct sctp_association *asoc;
 	struct sctp_transport *transport;
 	struct ipv6_pinfo *np;
-	sk_buff_data_t saveip, savesctp;
+	__be16 saveip, savesctp;
 	int err;
 	struct net *net = dev_net(skb->dev);