On Wed, Aug 17, 2016 at 10:18:26PM +1000, David Gwynne wrote: > the reason is that pools now keep track of things that are sleeping > for memory and will give them an item BEFORE waking them up. > previously i believe they were woken up to try and get an item, > which could fail as you described because interrupt load could > starve sleepers before the wakeup actually happens. > > mbufs and clusters are allocated out of pools, so they now inherit > this behaviour.
The commit message says: "userland process might hang if the system ran out of mbuf clusters" As I understand, we are hitting the global mbuf cluster limit. I don't see how a changed pool wakeup policy could fix this hang. bluhm
