2019-09-23 09:09:05

by Christophe JAILLET

[permalink] [raw]
Subject: [PATCH] ieee802154: mcr20a: simplify a bit 'mcr20a_handle_rx_read_buf_complete()'

Use a 'skb_put_data()' variant instead of rewritting it.
The __skb_put_data variant is safe here. It is obvious that the skb can
not overflow. It has just been allocated a few lines above with the same
'len'.

Signed-off-by: Christophe JAILLET <[email protected]>
---
drivers/net/ieee802154/mcr20a.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ieee802154/mcr20a.c b/drivers/net/ieee802154/mcr20a.c
index 17f2300e63ee..8dc04e2590b1 100644
--- a/drivers/net/ieee802154/mcr20a.c
+++ b/drivers/net/ieee802154/mcr20a.c
@@ -800,7 +800,7 @@ mcr20a_handle_rx_read_buf_complete(void *context)
if (!skb)
return;

- memcpy(skb_put(skb, len), lp->rx_buf, len);
+ __skb_put_data(skb, lp->rx_buf, len);
ieee802154_rx_irqsafe(lp->hw, skb, lp->rx_lqi[0]);

print_hex_dump_debug("mcr20a rx: ", DUMP_PREFIX_OFFSET, 16, 1,
--
2.20.1


2019-09-23 17:25:25

by Stefan Schmidt

[permalink] [raw]
Subject: Re: [PATCH] ieee802154: mcr20a: simplify a bit 'mcr20a_handle_rx_read_buf_complete()'

Hello Xue.

On 20.09.19 21:45, Christophe JAILLET wrote:
> Use a 'skb_put_data()' variant instead of rewritting it.
> The __skb_put_data variant is safe here. It is obvious that the skb can
> not overflow. It has just been allocated a few lines above with the same
> 'len'.
>
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> drivers/net/ieee802154/mcr20a.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ieee802154/mcr20a.c b/drivers/net/ieee802154/mcr20a.c
> index 17f2300e63ee..8dc04e2590b1 100644
> --- a/drivers/net/ieee802154/mcr20a.c
> +++ b/drivers/net/ieee802154/mcr20a.c
> @@ -800,7 +800,7 @@ mcr20a_handle_rx_read_buf_complete(void *context)
> if (!skb)
> return;
>
> - memcpy(skb_put(skb, len), lp->rx_buf, len);
> + __skb_put_data(skb, lp->rx_buf, len);
> ieee802154_rx_irqsafe(lp->hw, skb, lp->rx_lqi[0]);
>
> print_hex_dump_debug("mcr20a rx: ", DUMP_PREFIX_OFFSET, 16, 1,
>

Could you please review and ACK this? If you are happy I will take it
through my tree.

regards
Stefan Schmidt

2019-09-26 08:55:22

by Xue Liu

[permalink] [raw]
Subject: Re: [PATCH] ieee802154: mcr20a: simplify a bit 'mcr20a_handle_rx_read_buf_complete()'

On Sat, 21 Sep 2019 at 13:52, Stefan Schmidt <[email protected]> wrote:
>
> Hello Xue.
>
> On 20.09.19 21:45, Christophe JAILLET wrote:
> > Use a 'skb_put_data()' variant instead of rewritting it.
> > The __skb_put_data variant is safe here. It is obvious that the skb can
> > not overflow. It has just been allocated a few lines above with the same
> > 'len'.
> >
> > Signed-off-by: Christophe JAILLET <[email protected]>
> > ---
> > drivers/net/ieee802154/mcr20a.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/ieee802154/mcr20a.c b/drivers/net/ieee802154/mcr20a.c
> > index 17f2300e63ee..8dc04e2590b1 100644
> > --- a/drivers/net/ieee802154/mcr20a.c
> > +++ b/drivers/net/ieee802154/mcr20a.c
> > @@ -800,7 +800,7 @@ mcr20a_handle_rx_read_buf_complete(void *context)
> > if (!skb)
> > return;
> >
> > - memcpy(skb_put(skb, len), lp->rx_buf, len);
> > + __skb_put_data(skb, lp->rx_buf, len);
> > ieee802154_rx_irqsafe(lp->hw, skb, lp->rx_lqi[0]);
> >
> > print_hex_dump_debug("mcr20a rx: ", DUMP_PREFIX_OFFSET, 16, 1,
> >
>
> Could you please review and ACK this? If you are happy I will take it
> through my tree.
>
> regards
> Stefan Schmidt

Acked-by: Xue Liu <[email protected]>

--

2019-09-26 09:14:56

by Stefan Schmidt

[permalink] [raw]
Subject: Re: [PATCH] ieee802154: mcr20a: simplify a bit 'mcr20a_handle_rx_read_buf_complete()'

Hello.

On 24.09.19 23:40, Xue Liu wrote:
> On Sat, 21 Sep 2019 at 13:52, Stefan Schmidt <[email protected]> wrote:
>>
>> Hello Xue.
>>
>> On 20.09.19 21:45, Christophe JAILLET wrote:
>>> Use a 'skb_put_data()' variant instead of rewritting it.
>>> The __skb_put_data variant is safe here. It is obvious that the skb can
>>> not overflow. It has just been allocated a few lines above with the same
>>> 'len'.
>>>
>>> Signed-off-by: Christophe JAILLET <[email protected]>
>>> ---
>>> drivers/net/ieee802154/mcr20a.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/net/ieee802154/mcr20a.c b/drivers/net/ieee802154/mcr20a.c
>>> index 17f2300e63ee..8dc04e2590b1 100644
>>> --- a/drivers/net/ieee802154/mcr20a.c
>>> +++ b/drivers/net/ieee802154/mcr20a.c
>>> @@ -800,7 +800,7 @@ mcr20a_handle_rx_read_buf_complete(void *context)
>>> if (!skb)
>>> return;
>>>
>>> - memcpy(skb_put(skb, len), lp->rx_buf, len);
>>> + __skb_put_data(skb, lp->rx_buf, len);
>>> ieee802154_rx_irqsafe(lp->hw, skb, lp->rx_lqi[0]);
>>>
>>> print_hex_dump_debug("mcr20a rx: ", DUMP_PREFIX_OFFSET, 16, 1,
>>>
>>
>> Could you please review and ACK this? If you are happy I will take it
>> through my tree.
>>
>> regards
>> Stefan Schmidt
>
> Acked-by: Xue Liu <[email protected]>


This patch has been applied to the wpan tree and will be
part of the next pull request to net. Thanks!

regards
Stefan Schmidt