Re: [dm-devel] [RFC PATCH 2/2] mm, mempool: do not throttle PF_LESS_THROTTLE tasks
From: Michal Hocko <mhocko@kernel.org>
Date: 2016-08-03 15:42:52
Also in:
lkml
On Wed 03-08-16 08:53:25, Mikulas Patocka wrote:
On Thu, 28 Jul 2016, Michal Hocko wrote:quoted
quoted
quoted
quoted
I think we'd end up with cleaner code if we removed the cute-hacks. And we'd be able to use 6 more GFP flags!! (though I do wonder if we really need all those 26).Well, maybe we are able to remove those hacks, I wouldn't definitely be opposed. But right now I am not even convinced that the mempool specific gfp flags is the right way to go.I'm not suggesting a mempool-specific gfp flag. I'm suggesting a transient-allocation gfp flag, which would be quite useful for mempool. Can you give more details on why using a gfp flag isn't your first choice for guiding what happens when the system is trying to get a free page :-?If we get rid of throttle_vm_writeout then I guess it might turn out to be unnecessary. There are other places which will still throttle but I believe those should be kept regardless of who is doing the allocation because they are helping the LRU scanning sane. I might be wrong here and bailing out from the reclaim rather than waiting would turn out better for some users but I would like to see whether the first approach works reasonably well.If we are swapping to a dm-crypt device, the dm-crypt device is congested and the underlying block device is not congested, we should not throttle mempool allocations made from the dm-crypt workqueue. Not even a little bit.
But the device congestion is not the only condition required for the throttling. The pgdat has also be marked congested which means that the LRU page scanner bumped into dirty/writeback/pg_reclaim pages at the tail of the LRU. That should only happen if we are rotating LRUs too quickly. AFAIU the reclaim shouldn't allow free ticket scanning in that situation.
So, I think, mempool_alloc should set PF_NO_THROTTLE (or __GFP_NO_THROTTLE).
As I've said earlier that would probably require to bail out from the reclaim if we detect a potential pgdat congestion. What do you think Mel? -- Michal Hocko SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>