Messages in this thread |  | | Date | Wed, 9 Jan 2013 08:42:47 +0000 | From | Eric Wong <> | Subject | Re: ppoll() stuck on POLLIN while TCP peer is sending |
| |
Eric Wong <normalperson@yhbt.net> wrote: > Eric Dumazet <erdnetdev@gmail.com> wrote: > > On Tue, 2013-01-08 at 18:32 -0800, Eric Dumazet wrote: > > > Hmm, it seems sk_filter() can return -ENOMEM because skb has the > > > pfmemalloc() set. > > > > > > > > One TCP socket keeps retransmitting an SKB via loopback, and TCP stack > > > drops the packet again and again. > > > > sock_init_data() sets sk->sk_allocation to GFP_KERNEL > > > > Shouldnt it use (GFP_KERNEL | __GFP_NOMEMALLOC) instead ? > > Thanks, things are running good after ~35 minutes so far. > Will report back if things break (hopefully I don't run out > of laptop battery power :x).
Oops, I had to restart my test :x. However, I was able to reproduce the issue very quickly again with your patch. I've double-checked I'm booting into the correct kernel, but I do have more load on this laptop host now, so maybe that made it happen more quickly...
|  |