On Tue 03-05-22 08:59:13, Paul E. McKenney wrote: > Hello! > > Just following up from off-list discussions yesterday. > > The requirements to allocate on an RCU-protected speculative fastpath > seem to be as follows: > > 1. Never sleep. > 2. Never reclaim. > 3. Leave emergency pools alone. > > Any others? > > If those rules suffice, and if my understanding of the GFP flags is > correct (ha!!!), then the following GFP flags should cover this: > > __GFP_NOMEMALLOC | __GFP_NOWARN GFP_NOWAIT | __GFP_NOMEMALLOC | __GFP_NOWARN > Or is this just a fancy way of always returning NULL or some such? ;-) It could fail quite easily. We would also want to guarantee (by documenting I guess) that the page allocator never does anything that would depend or invoke rcu_synchronize or something like that. I believe this is the case currently. -- Michal Hocko SUSE Labs