Re: [RFC PATCH v2 0/4] dynamic indirect call promotion

2019-02-18 Thread Nadav Amit
> On Feb 15, 2019, at 9:21 AM, Edward Cree wrote: > > On 05/02/19 08:50, Nadav Amit wrote: >>> In cases where RCU cannot be used (e.g. because some callees need to RCU >>> synchronise), it might be possible to add a variant that uses >>> synchronize_rcu_tasks() when updating, but this series

Re: [RFC PATCH v2 0/4] dynamic indirect call promotion

2019-02-15 Thread Edward Cree
On 05/02/19 08:50, Nadav Amit wrote: >> In cases where RCU cannot be used (e.g. because some callees need to RCU >> synchronise), it might be possible to add a variant that uses >> synchronize_rcu_tasks() when updating, but this series does not attempt this. > I wonder why. Mainly because I have

Re: [RFC PATCH v2 0/4] dynamic indirect call promotion

2019-02-05 Thread Nadav Amit
> On Feb 1, 2019, at 4:05 PM, Edward Cree wrote: > > This series introduces 'dynamic_calls', branch trees of static calls (updated > at runtime using text patching), to avoid making indirect calls to common > targets. The basic mechanism is >if (func == static_key_1.target) >

[RFC PATCH v2 0/4] dynamic indirect call promotion

2019-02-01 Thread Edward Cree
This series introduces 'dynamic_calls', branch trees of static calls (updated at runtime using text patching), to avoid making indirect calls to common targets. The basic mechanism is if (func == static_key_1.target) call_static_key_1(args); else if (func == static_key_2.target)