On 02/05/14 15:06, Sander Eikelenboom wrote: > > Friday, May 2, 2014, 4:00:40 PM, you wrote: > >>>> Let's see what that does different and if that gives an insight in what is going >>>> wrong. >>> >>> The debug patch that i used is attached. >>> Here is some of the output, skb->data_len size sometimes varies slightly as does skb->truesize (is that allowed to become > 64k ?). >> Yes, truesize can be over 64K, as it includes the aligned size of the >> data itself (64k max), struct skbuff and struct shared_info. >> However my calculation for the truesize might be wrong: I count all the >> frags as full sized pages (skb->truesize += i * PAGE_SIZE), but the last >> page is not necessarily used entirely by that frag. >> I had the idea that truesize should include the size of the whole page >> as we reserved it with alloc_page for this skb, but it might not be true. > Btw. with you "skb->>truesize -= nskb->data_len;" version truesize should >> end up around 128k, something entirely wrong. Can you try with > "skb->>truesize -= nskb->data_len;" in that line? >> My repro env is underway in the meantime ... > > Erhmm i don't get this last part, first you entitle > "skb->truesize -= nskb->data_len;" as being "entirely wrong" (which is probably true) > > Then you want me to try just that ? .. or did you mean something else ? Sorry, I was misleading and wrong. Can you try out this scenario with the attached patch? Thanks, Zoli