Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-30 Thread Paul E. McKenney
On Fri, Jun 30, 2017 at 01:16:54PM +0800, Boqun Feng wrote: > On Thu, Jun 29, 2017 at 09:02:41PM -0700, Paul E. McKenney wrote: [ . . . ] > > > > o kernel/task_work.c task_work_run() > > > > Seems to rely on the acquire semantics only. This is to handle > > > > > > I think this

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-30 Thread Paul E. McKenney
On Fri, Jun 30, 2017 at 01:16:54PM +0800, Boqun Feng wrote: > On Thu, Jun 29, 2017 at 09:02:41PM -0700, Paul E. McKenney wrote: [ . . . ] > > > > o kernel/task_work.c task_work_run() > > > > Seems to rely on the acquire semantics only. This is to handle > > > > > > I think this

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Boqun Feng
On Thu, Jun 29, 2017 at 09:02:41PM -0700, Paul E. McKenney wrote: [...] > > > o net/netfilter/nf_conntrack_core.c nf_conntrack_lock() > > > This instance of spin_unlock_wait() interacts with > > > nf_conntrack_all_lock()'s instance of spin_unlock_wait(). > > > Although

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Boqun Feng
On Thu, Jun 29, 2017 at 09:02:41PM -0700, Paul E. McKenney wrote: [...] > > > o net/netfilter/nf_conntrack_core.c nf_conntrack_lock() > > > This instance of spin_unlock_wait() interacts with > > > nf_conntrack_all_lock()'s instance of spin_unlock_wait(). > > > Although

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Fri, Jun 30, 2017 at 10:51:26AM +0800, Boqun Feng wrote: > On Thu, Jun 29, 2017 at 11:11:26AM -0700, Paul E. McKenney wrote: > > On Thu, Jun 29, 2017 at 11:59:27AM -0400, Alan Stern wrote: > > > On Thu, 29 Jun 2017, Will Deacon wrote: > > > > > > > [turns out I've not been on cc for this

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Fri, Jun 30, 2017 at 10:51:26AM +0800, Boqun Feng wrote: > On Thu, Jun 29, 2017 at 11:11:26AM -0700, Paul E. McKenney wrote: > > On Thu, Jun 29, 2017 at 11:59:27AM -0400, Alan Stern wrote: > > > On Thu, 29 Jun 2017, Will Deacon wrote: > > > > > > > [turns out I've not been on cc for this

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Boqun Feng
On Thu, Jun 29, 2017 at 11:11:26AM -0700, Paul E. McKenney wrote: > On Thu, Jun 29, 2017 at 11:59:27AM -0400, Alan Stern wrote: > > On Thu, 29 Jun 2017, Will Deacon wrote: > > > > > [turns out I've not been on cc for this thread, but Jade pointed me to it > > > and I see my name came up at some

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Boqun Feng
On Thu, Jun 29, 2017 at 11:11:26AM -0700, Paul E. McKenney wrote: > On Thu, Jun 29, 2017 at 11:59:27AM -0400, Alan Stern wrote: > > On Thu, 29 Jun 2017, Will Deacon wrote: > > > > > [turns out I've not been on cc for this thread, but Jade pointed me to it > > > and I see my name came up at some

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Thu, Jun 29, 2017 at 11:17:26AM +0800, Boqun Feng wrote: > On Wed, Jun 28, 2017 at 05:45:56PM -0700, Paul E. McKenney wrote: > > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > > > wrote: > >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Thu, Jun 29, 2017 at 11:17:26AM +0800, Boqun Feng wrote: > On Wed, Jun 28, 2017 at 05:45:56PM -0700, Paul E. McKenney wrote: > > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > > > wrote: > > > > > > > > Linus, are you

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Thu, Jun 29, 2017 at 12:38:48PM +0100, Will Deacon wrote: > [turns out I've not been on cc for this thread, but Jade pointed me to it > and I see my name came up at some point!] My bad for not having you Cc: on the original patch, apologies! > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Thu, Jun 29, 2017 at 12:38:48PM +0100, Will Deacon wrote: > [turns out I've not been on cc for this thread, but Jade pointed me to it > and I see my name came up at some point!] My bad for not having you Cc: on the original patch, apologies! > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Thu, Jun 29, 2017 at 11:59:27AM -0400, Alan Stern wrote: > On Thu, 29 Jun 2017, Will Deacon wrote: > > > [turns out I've not been on cc for this thread, but Jade pointed me to it > > and I see my name came up at some point!] > > > > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Paul E. McKenney
On Thu, Jun 29, 2017 at 11:59:27AM -0400, Alan Stern wrote: > On Thu, 29 Jun 2017, Will Deacon wrote: > > > [turns out I've not been on cc for this thread, but Jade pointed me to it > > and I see my name came up at some point!] > > > > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Alan Stern
On Thu, 29 Jun 2017, Will Deacon wrote: > [turns out I've not been on cc for this thread, but Jade pointed me to it > and I see my name came up at some point!] > > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Alan Stern
On Thu, 29 Jun 2017, Will Deacon wrote: > [turns out I've not been on cc for this thread, but Jade pointed me to it > and I see my name came up at some point!] > > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > > wrote: >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Will Deacon
[turns out I've not been on cc for this thread, but Jade pointed me to it and I see my name came up at some point!] On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > wrote: > > > > Linus, are you

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Will Deacon
[turns out I've not been on cc for this thread, but Jade pointed me to it and I see my name came up at some point!] On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > wrote: > > > > Linus, are you dead-set against defining

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Will Deacon
Hey Paul, On Wed, Jun 28, 2017 at 05:45:56PM -0700, Paul E. McKenney wrote: > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > > wrote: > > > > > > Linus, are you dead-set against defining

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-29 Thread Will Deacon
Hey Paul, On Wed, Jun 28, 2017 at 05:45:56PM -0700, Paul E. McKenney wrote: > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > > wrote: > > > > > > Linus, are you dead-set against defining spin_unlock_wait() to be > > >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Boqun Feng
On Wed, Jun 28, 2017 at 05:45:56PM -0700, Paul E. McKenney wrote: > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > > wrote: > > > > > > Linus, are you dead-set against defining spin_unlock_wait()

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Boqun Feng
On Wed, Jun 28, 2017 at 05:45:56PM -0700, Paul E. McKenney wrote: > On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > > wrote: > > > > > > Linus, are you dead-set against defining spin_unlock_wait() to be > > > spin_lock +

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Paul E. McKenney
On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > wrote: > > > > Linus, are you dead-set against defining spin_unlock_wait() to be > > spin_lock + spin_unlock? For example, is the current x86

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Paul E. McKenney
On Wed, Jun 28, 2017 at 05:05:46PM -0700, Linus Torvalds wrote: > On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney > wrote: > > > > Linus, are you dead-set against defining spin_unlock_wait() to be > > spin_lock + spin_unlock? For example, is the current x86 implementation > > of

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Linus Torvalds
On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney wrote: > > Linus, are you dead-set against defining spin_unlock_wait() to be > spin_lock + spin_unlock? For example, is the current x86 implementation > of spin_unlock_wait() really a non-negotiable hard requirement?

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Linus Torvalds
On Wed, Jun 28, 2017 at 4:54 PM, Paul E. McKenney wrote: > > Linus, are you dead-set against defining spin_unlock_wait() to be > spin_lock + spin_unlock? For example, is the current x86 implementation > of spin_unlock_wait() really a non-negotiable hard requirement? Or > would you be willing to

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Paul E. McKenney
On Wed, Jun 28, 2017 at 04:16:03PM -0400, Alan Stern wrote: > On Wed, 28 Jun 2017, Paul E. McKenney wrote: [ . . . ] > Yes. Bear in mind that the PowerPC version of arch_spin_unlock_wait > ends with smp_mb. That already makes it a lot stronger than the > smp_cond_load_acquire implementation on

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Paul E. McKenney
On Wed, Jun 28, 2017 at 04:16:03PM -0400, Alan Stern wrote: > On Wed, 28 Jun 2017, Paul E. McKenney wrote: [ . . . ] > Yes. Bear in mind that the PowerPC version of arch_spin_unlock_wait > ends with smp_mb. That already makes it a lot stronger than the > smp_cond_load_acquire implementation on

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Alan Stern
On Wed, 28 Jun 2017, Paul E. McKenney wrote: > > The problem is that adding smp_mb() before spin_unlock_wait() does not > > provide release semantics, as Andrea has pointed out. ISTM that when > > people want full release & acquire semantics, they should just use > > "spin_lock();

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Alan Stern
On Wed, 28 Jun 2017, Paul E. McKenney wrote: > > The problem is that adding smp_mb() before spin_unlock_wait() does not > > provide release semantics, as Andrea has pointed out. ISTM that when > > people want full release & acquire semantics, they should just use > > "spin_lock();

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Paul E. McKenney
On Wed, Jun 28, 2017 at 11:31:55AM -0400, Alan Stern wrote: > On Tue, 27 Jun 2017, Paul E. McKenney wrote: > > > On Tue, Jun 27, 2017 at 02:48:18PM -0700, Linus Torvalds wrote: > > > On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney > > > wrote: > > > > > > > > So

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Paul E. McKenney
On Wed, Jun 28, 2017 at 11:31:55AM -0400, Alan Stern wrote: > On Tue, 27 Jun 2017, Paul E. McKenney wrote: > > > On Tue, Jun 27, 2017 at 02:48:18PM -0700, Linus Torvalds wrote: > > > On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney > > > wrote: > > > > > > > > So what next? > > > > > > > > One

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Alan Stern
On Tue, 27 Jun 2017, Paul E. McKenney wrote: > On Tue, Jun 27, 2017 at 02:48:18PM -0700, Linus Torvalds wrote: > > On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney > > wrote: > > > > > > So what next? > > > > > > One option would be to weaken the definition of

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-28 Thread Alan Stern
On Tue, 27 Jun 2017, Paul E. McKenney wrote: > On Tue, Jun 27, 2017 at 02:48:18PM -0700, Linus Torvalds wrote: > > On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney > > wrote: > > > > > > So what next? > > > > > > One option would be to weaken the definition of spin_unlock_wait() so > > > that

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-27 Thread Paul E. McKenney
On Tue, Jun 27, 2017 at 02:48:18PM -0700, Linus Torvalds wrote: > On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney > wrote: > > > > So what next? > > > > One option would be to weaken the definition of spin_unlock_wait() so > > that it had acquire semantics but not

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-27 Thread Paul E. McKenney
On Tue, Jun 27, 2017 at 02:48:18PM -0700, Linus Torvalds wrote: > On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney > wrote: > > > > So what next? > > > > One option would be to weaken the definition of spin_unlock_wait() so > > that it had acquire semantics but not release semantics.

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-27 Thread Linus Torvalds
On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney wrote: > > So what next? > > One option would be to weaken the definition of spin_unlock_wait() so > that it had acquire semantics but not release semantics. Alternatively, > we could keep the full

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-27 Thread Linus Torvalds
On Tue, Jun 27, 2017 at 1:58 PM, Paul E. McKenney wrote: > > So what next? > > One option would be to weaken the definition of spin_unlock_wait() so > that it had acquire semantics but not release semantics. Alternatively, > we could keep the full empty-critical-section semantics and add memory

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-27 Thread Paul E. McKenney
On Mon, Jun 19, 2017 at 06:24:28PM +0200, Andrea Parri wrote: > On Wed, Jun 14, 2017 at 01:23:29PM -0700, Paul E. McKenney wrote: > > On Wed, Jun 14, 2017 at 04:33:22PM +0200, Andrea Parri wrote: > > > On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > > > > On Wed, Jun 14, 2017

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-27 Thread Paul E. McKenney
On Mon, Jun 19, 2017 at 06:24:28PM +0200, Andrea Parri wrote: > On Wed, Jun 14, 2017 at 01:23:29PM -0700, Paul E. McKenney wrote: > > On Wed, Jun 14, 2017 at 04:33:22PM +0200, Andrea Parri wrote: > > > On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > > > > On Wed, Jun 14, 2017

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-19 Thread Andrea Parri
On Wed, Jun 14, 2017 at 01:23:29PM -0700, Paul E. McKenney wrote: > On Wed, Jun 14, 2017 at 04:33:22PM +0200, Andrea Parri wrote: > > On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > > > On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > > > > On Mon, Jun 12, 2017

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-19 Thread Andrea Parri
On Wed, Jun 14, 2017 at 01:23:29PM -0700, Paul E. McKenney wrote: > On Wed, Jun 14, 2017 at 04:33:22PM +0200, Andrea Parri wrote: > > On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > > > On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > > > > On Mon, Jun 12, 2017

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-14 Thread Paul E. McKenney
On Wed, Jun 14, 2017 at 04:33:22PM +0200, Andrea Parri wrote: > On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > > On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > > > On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > > > > Hello, Ingo, > > > >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-14 Thread Paul E. McKenney
On Wed, Jun 14, 2017 at 04:33:22PM +0200, Andrea Parri wrote: > On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > > On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > > > On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > > > > Hello, Ingo, > > > >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-14 Thread Andrea Parri
On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > > On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > > > Hello, Ingo, > > > > > > This pull request is unusual in being a single linear set of

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-14 Thread Andrea Parri
On Tue, Jun 13, 2017 at 09:33:17PM -0700, Paul E. McKenney wrote: > On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > > On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > > > Hello, Ingo, > > > > > > This pull request is unusual in being a single linear set of

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-13 Thread Paul E. McKenney
On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > > Hello, Ingo, > > > > This pull request is unusual in being a single linear set of commits, > > as opposed to my usual topic branches. This is due to the many > >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-13 Thread Paul E. McKenney
On Wed, Jun 14, 2017 at 04:54:04AM +0200, Andrea Parri wrote: > On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > > Hello, Ingo, > > > > This pull request is unusual in being a single linear set of commits, > > as opposed to my usual topic branches. This is due to the many > >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-13 Thread Andrea Parri
On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > Hello, Ingo, > > This pull request is unusual in being a single linear set of commits, > as opposed to my usual topic branches. This is due to the many > large-footprint changes, which means that reasonable topic branches >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-13 Thread Andrea Parri
On Mon, Jun 12, 2017 at 02:37:55PM -0700, Paul E. McKenney wrote: > Hello, Ingo, > > This pull request is unusual in being a single linear set of commits, > as opposed to my usual topic branches. This is due to the many > large-footprint changes, which means that reasonable topic branches >

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-13 Thread Ingo Molnar
* Paul E. McKenney wrote: > Hello, Ingo, > > This pull request is unusual in being a single linear set of commits, > as opposed to my usual topic branches. This is due to the many > large-footprint changes, which means that reasonable topic branches > result in

Re: [GIT PULL rcu/next] RCU commits for 4.13

2017-06-13 Thread Ingo Molnar
* Paul E. McKenney wrote: > Hello, Ingo, > > This pull request is unusual in being a single linear set of commits, > as opposed to my usual topic branches. This is due to the many > large-footprint changes, which means that reasonable topic branches > result in large numbers of merge

[GIT PULL rcu/next] RCU commits for 4.13

2017-06-12 Thread Paul E. McKenney
Hello, Ingo, This pull request is unusual in being a single linear set of commits, as opposed to my usual topic branches. This is due to the many large-footprint changes, which means that reasonable topic branches result in large numbers of merge conflicts. In addition, some commits depend on

[GIT PULL rcu/next] RCU commits for 4.13

2017-06-12 Thread Paul E. McKenney
Hello, Ingo, This pull request is unusual in being a single linear set of commits, as opposed to my usual topic branches. This is due to the many large-footprint changes, which means that reasonable topic branches result in large numbers of merge conflicts. In addition, some commits depend on