Messages in this thread | | | Date | Thu, 24 Sep 2020 13:16:32 +0200 | From | Peter Zijlstra <> | Subject | Re: [RFC-PATCH 2/4] mm: Add __rcu_alloc_page_lockless() func. |
| |
On Thu, Sep 24, 2020 at 10:16:14AM +0200, Uladzislau Rezki wrote: > Other option is if we had unconditionally enabled PREEMPT_COUNT config. > It would be easy to identify a context type and invoke a page allocator > if a context is preemtale. But as of now preemptable() is "half" working. > Thomas uploaded patches to make it unconditional. But it can be blocked.
While I in principle support Thomas' patch, I think this is an abuse and still complete wrong.
Not all preemptible() context can deal with GFP_KERNEL (GFP_NOFS existing should be a clue). !preemptible context cannot unconditionally deal with GFP_NOWAIT, consider using it while holding zone->lock.
The preemption context does not say antying much useful about the allocation context.
| |