2014-03-01 12:52:43

by Ivaylo Dimitrov

[permalink] [raw]
Subject: [PATCH] wl1251: use skb_trim to make skb shorter

the current code is directly setting skb->len, which is not correct and
brings problems with HAVE_EFFICIENT_UNALIGNED_ACCESS enabled in config

Signed-off-by: Ivaylo Dimitrov <[email protected]>
---
drivers/net/wireless/ti/wl1251/rx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/ti/wl1251/rx.c b/drivers/net/wireless/ti/wl1251/rx.c
index 123c4bb..cde0eaf 100644
--- a/drivers/net/wireless/ti/wl1251/rx.c
+++ b/drivers/net/wireless/ti/wl1251/rx.c
@@ -180,7 +180,7 @@ static void wl1251_rx_body(struct wl1251 *wl,
wl1251_mem_read(wl, rx_packet_ring_addr, rx_buffer, length);

/* The actual length doesn't include the target's alignment */
- skb->len = desc->length - PLCP_HEADER_LENGTH;
+ skb_trim(skb, desc->length - PLCP_HEADER_LENGTH);

fc = (u16 *)skb->data;

--
1.7.9.5



2014-03-04 14:27:16

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH] wl1251: use skb_trim to make skb shorter

Hi Jonn,

On Sat, Mar 01, 2014 at 12:52:06PM +0000, Ivaylo Dimitrov wrote:
> the current code is directly setting skb->len, which is not correct and
> brings problems with HAVE_EFFICIENT_UNALIGNED_ACCESS enabled in config
>
> Signed-off-by: Ivaylo Dimitrov <[email protected]>
> ---

Can you pick this patch up please? It addresses a regression introduced in
the merge window (ARM started selecting HAVE_EFFICIENT_UNALIGNED_ACCESS).

Cheers,

Will

> drivers/net/wireless/ti/wl1251/rx.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/ti/wl1251/rx.c b/drivers/net/wireless/ti/wl1251/rx.c
> index 123c4bb..cde0eaf 100644
> --- a/drivers/net/wireless/ti/wl1251/rx.c
> +++ b/drivers/net/wireless/ti/wl1251/rx.c
> @@ -180,7 +180,7 @@ static void wl1251_rx_body(struct wl1251 *wl,
> wl1251_mem_read(wl, rx_packet_ring_addr, rx_buffer, length);
>
> /* The actual length doesn't include the target's alignment */
> - skb->len = desc->length - PLCP_HEADER_LENGTH;
> + skb_trim(skb, desc->length - PLCP_HEADER_LENGTH);
>
> fc = (u16 *)skb->data;
>
> --
> 1.7.9.5
>
>

2014-03-04 18:45:16

by John W. Linville

[permalink] [raw]
Subject: Re: [PATCH] wl1251: use skb_trim to make skb shorter

OK, I'll queue it as a fix...

On Tue, Mar 04, 2014 at 02:26:58PM +0000, Will Deacon wrote:
> Hi Jonn,
>
> On Sat, Mar 01, 2014 at 12:52:06PM +0000, Ivaylo Dimitrov wrote:
> > the current code is directly setting skb->len, which is not correct and
> > brings problems with HAVE_EFFICIENT_UNALIGNED_ACCESS enabled in config
> >
> > Signed-off-by: Ivaylo Dimitrov <[email protected]>
> > ---
>
> Can you pick this patch up please? It addresses a regression introduced in
> the merge window (ARM started selecting HAVE_EFFICIENT_UNALIGNED_ACCESS).
>
> Cheers,
>
> Will
>
> > drivers/net/wireless/ti/wl1251/rx.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/wireless/ti/wl1251/rx.c b/drivers/net/wireless/ti/wl1251/rx.c
> > index 123c4bb..cde0eaf 100644
> > --- a/drivers/net/wireless/ti/wl1251/rx.c
> > +++ b/drivers/net/wireless/ti/wl1251/rx.c
> > @@ -180,7 +180,7 @@ static void wl1251_rx_body(struct wl1251 *wl,
> > wl1251_mem_read(wl, rx_packet_ring_addr, rx_buffer, length);
> >
> > /* The actual length doesn't include the target's alignment */
> > - skb->len = desc->length - PLCP_HEADER_LENGTH;
> > + skb_trim(skb, desc->length - PLCP_HEADER_LENGTH);
> >
> > fc = (u16 *)skb->data;
> >
> > --
> > 1.7.9.5
> >
> >
>

--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.

2014-03-05 10:06:34

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH] wl1251: use skb_trim to make skb shorter

On Tue, Mar 04, 2014 at 06:33:48PM +0000, John W. Linville wrote:
> OK, I'll queue it as a fix...

Thanks, John.

Will


> On Tue, Mar 04, 2014 at 02:26:58PM +0000, Will Deacon wrote:
> > Hi Jonn,
> >
> > On Sat, Mar 01, 2014 at 12:52:06PM +0000, Ivaylo Dimitrov wrote:
> > > the current code is directly setting skb->len, which is not correct and
> > > brings problems with HAVE_EFFICIENT_UNALIGNED_ACCESS enabled in config
> > >
> > > Signed-off-by: Ivaylo Dimitrov <[email protected]>
> > > ---
> >
> > Can you pick this patch up please? It addresses a regression introduced in
> > the merge window (ARM started selecting HAVE_EFFICIENT_UNALIGNED_ACCESS).
> >
> > Cheers,
> >
> > Will
> >
> > > drivers/net/wireless/ti/wl1251/rx.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/net/wireless/ti/wl1251/rx.c b/drivers/net/wireless/ti/wl1251/rx.c
> > > index 123c4bb..cde0eaf 100644
> > > --- a/drivers/net/wireless/ti/wl1251/rx.c
> > > +++ b/drivers/net/wireless/ti/wl1251/rx.c
> > > @@ -180,7 +180,7 @@ static void wl1251_rx_body(struct wl1251 *wl,
> > > wl1251_mem_read(wl, rx_packet_ring_addr, rx_buffer, length);
> > >
> > > /* The actual length doesn't include the target's alignment */
> > > - skb->len = desc->length - PLCP_HEADER_LENGTH;
> > > + skb_trim(skb, desc->length - PLCP_HEADER_LENGTH);
> > >
> > > fc = (u16 *)skb->data;
> > >
> > > --
> > > 1.7.9.5
> > >
> > >
> >
>
> --
> John W. Linville Someday the world will need a hero, and you
> [email protected] might be all we have. Be ready.
>