Re: 3.4.0-rc2: skb_put() -> skb_over_panic

Alexander Beregalov
2012-04-18T07:54:15Z

>> > Thanks a lot, I belive I know where the problem is.
>> >
>> > Could you check if commit a21d45726acacc963d8baddf74607d9b74e2b723
>> > (tcp: avoid order-1 allocations on wifi and tx path)
>> > was in your tree ?
>> >
>>
>> It was,
>> git show a21d4572 v3.4-rc2..668ce0a
>> shows it
>
> Thansk for the confirmation.
>
> Had you see the patch I sent some hours ago, and can you test it ?
>
> If not, I probably can reproduce the problem in my lab.
>
> diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
> index 376b2cf..7ac6423 100644
> --- a/net/ipv4/tcp_output.c
> +++ b/net/ipv4/tcp_output.c
> @@ -1096,6 +1096,7 @@ static void __pskb_trim_head(struct sk_buff *skb, int len)
>        eat = min_t(int, len, skb_headlen(skb));
>        if (eat) {
>                __skb_pull(skb, eat);
> +               skb->avail_size -= eat;
>                len -= eat;
>                if (!len)
>                        return;
>
>

Yes, I am testing it.