|
From: | Paolo Bonzini |
Subject: | Re: [PATCH 2/7] aio-posix: move RCU_READ_LOCK() into run_poll_handlers() |
Date: | Thu, 5 Mar 2020 18:15:36 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 |
On 05/03/20 18:08, Stefan Hajnoczi wrote: > > + /* > + * Optimization: ->io_poll() handlers often contain RCU read critical > + * sections and we therefore see many rcu_read_lock() -> > rcu_read_unlock() > + * -> rcu_read_lock() -> ... sequences with expensive memory > + * synchronization primitives. Make the entire polling loop an RCU > + * critical section because nested rcu_read_lock()/rcu_read_unlock() > calls > + * are cheap. > + */ > + RCU_READ_LOCK_GUARD(); > + Looks good, but I suggest that you compile with --enable-membarrier as that makes RCU critical sections basically free. Paolo
[Prev in Thread] | Current Thread | [Next in Thread] |