Message ID | 0102015b8a4332ea-1e523746-5fd0-48d9-9045-d9de973fcd1a-000000@eu-west-1.amazonses.com |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
Hello! On 4/20/2017 10:28 AM, Peter Heise wrote: > Fixed an unchecked call of skb_put_padto. Return value was ignored > before, however, skb_put_padto frees skb buffer in case of error. > > As reported by Dan Carpenter on kernel-janitors. > > Signed-off-by: Peter Heise <mail@pheise.de> > --- > net/hsr/hsr_device.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/net/hsr/hsr_device.c b/net/hsr/hsr_device.c > index c73160fb11e7..22d693f213be 100644 > --- a/net/hsr/hsr_device.c > +++ b/net/hsr/hsr_device.c > @@ -314,7 +314,8 @@ static void send_hsr_supervision_frame(struct hsr_port *master, > hsr_sp = (typeof(hsr_sp)) skb_put(skb, sizeof(struct hsr_sup_payload)); > ether_addr_copy(hsr_sp->MacAddressA, master->dev->dev_addr); > > - skb_put_padto(skb, ETH_ZLEN + HSR_HLEN); > + if(skb_put_padto(skb, ETH_ZLEN + HSR_HLEN)) Need a space after *if*. Pleae run your patches thru scripts/checkpatch.pl before sending. > + return; > > hsr_forward_skb(skb, master); > return; MBR, Seregi
diff --git a/net/hsr/hsr_device.c b/net/hsr/hsr_device.c index c73160fb11e7..22d693f213be 100644 --- a/net/hsr/hsr_device.c +++ b/net/hsr/hsr_device.c @@ -314,7 +314,8 @@ static void send_hsr_supervision_frame(struct hsr_port *master, hsr_sp = (typeof(hsr_sp)) skb_put(skb, sizeof(struct hsr_sup_payload)); ether_addr_copy(hsr_sp->MacAddressA, master->dev->dev_addr); - skb_put_padto(skb, ETH_ZLEN + HSR_HLEN); + if(skb_put_padto(skb, ETH_ZLEN + HSR_HLEN)) + return; hsr_forward_skb(skb, master); return;
Fixed an unchecked call of skb_put_padto. Return value was ignored before, however, skb_put_padto frees skb buffer in case of error. As reported by Dan Carpenter on kernel-janitors. Signed-off-by: Peter Heise <mail@pheise.de> --- net/hsr/hsr_device.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)