All of lore.kernel.org
 help / color / mirror / Atom feed
From: Waiman Long <longman@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>,
	Nicholas Piggin <npiggin@gmail.com>,
	linuxppc-dev@lists.ozlabs.org, Will Deacon <will@kernel.org>,
	Boqun Feng <boqun.feng@gmail.com>, Ingo Molnar <mingo@redhat.com>,
	Anton Blanchard <anton@ozlabs.org>,
	linux-kernel@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm-ppc@vger.kernel.org, linux-arch@vger.kernel.org
Subject: Re: [PATCH v3 5/6] powerpc/pseries: implement paravirt qspinlocks for SPLPAR
Date: Thu, 23 Jul 2020 14:32:36 -0400	[thread overview]
Message-ID: <845de183-56f5-2958-3159-faa131d46401@redhat.com> (raw)
In-Reply-To: <20200723140011.GR5523@worktop.programming.kicks-ass.net>

On 7/23/20 10:00 AM, Peter Zijlstra wrote:
> On Thu, Jul 09, 2020 at 12:06:13PM -0400, Waiman Long wrote:
>> We don't really need to do a pv_spinlocks_init() if pv_kick() isn't
>> supported.
> Waiman, if you cannot explain how not having kick is a sane thing, what
> are you saying here?
>
The current PPC paravirt spinlock code doesn't do any cpu kick. It does 
an equivalence of pv_wait by yielding the cpu to the lock holder only. 
The pv_spinlocks_init() is for setting up the hash table for doing 
pv_kick. If we don't need to do pv_kick, we don't need the hash table.

I am not saying that pv_kick is not needed for the PPC environment. I 
was just trying to adapt the pvqspinlock code to such an environment 
first. Further investigation on how to implement some kind of pv_kick 
will be something that we may want to do as a follow on.

BTW, do you have any comment on my v2 lock holder cpu info qspinlock 
patch? I will have to update the patch to fix the reported 0-day test 
problem, but I want to collect other feedback before sending out v3.

Cheers,
Longman


WARNING: multiple messages have this Message-ID (diff)
From: Waiman Long <longman@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: linux-arch@vger.kernel.org, Boqun Feng <boqun.feng@gmail.com>,
	virtualization@lists.linux-foundation.org,
	linuxppc-dev@lists.ozlabs.org,
	Nicholas Piggin <npiggin@gmail.com>,
	linux-kernel@vger.kernel.org, Ingo Molnar <mingo@redhat.com>,
	kvm-ppc@vger.kernel.org, Will Deacon <will@kernel.org>
Subject: Re: [PATCH v3 5/6] powerpc/pseries: implement paravirt qspinlocks for SPLPAR
Date: Thu, 23 Jul 2020 14:32:36 -0400	[thread overview]
Message-ID: <845de183-56f5-2958-3159-faa131d46401@redhat.com> (raw)
In-Reply-To: <20200723140011.GR5523@worktop.programming.kicks-ass.net>

On 7/23/20 10:00 AM, Peter Zijlstra wrote:
> On Thu, Jul 09, 2020 at 12:06:13PM -0400, Waiman Long wrote:
>> We don't really need to do a pv_spinlocks_init() if pv_kick() isn't
>> supported.
> Waiman, if you cannot explain how not having kick is a sane thing, what
> are you saying here?
>
The current PPC paravirt spinlock code doesn't do any cpu kick. It does 
an equivalence of pv_wait by yielding the cpu to the lock holder only. 
The pv_spinlocks_init() is for setting up the hash table for doing 
pv_kick. If we don't need to do pv_kick, we don't need the hash table.

I am not saying that pv_kick is not needed for the PPC environment. I 
was just trying to adapt the pvqspinlock code to such an environment 
first. Further investigation on how to implement some kind of pv_kick 
will be something that we may want to do as a follow on.

BTW, do you have any comment on my v2 lock holder cpu info qspinlock 
patch? I will have to update the patch to fix the reported 0-day test 
problem, but I want to collect other feedback before sending out v3.

Cheers,
Longman


WARNING: multiple messages have this Message-ID (diff)
From: Waiman Long <longman@redhat.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Michael Ellerman <mpe@ellerman.id.au>,
	Nicholas Piggin <npiggin@gmail.com>,
	linuxppc-dev@lists.ozlabs.org, Will Deacon <will@kernel.org>,
	Boqun Feng <boqun.feng@gmail.com>, Ingo Molnar <mingo@redhat.com>,
	Anton Blanchard <anton@ozlabs.org>,
	linux-kernel@vger.kernel.org,
	virtualization@lists.linux-foundation.org,
	kvm-ppc@vger.kernel.org, linux-arch@vger.kernel.org
Subject: Re: [PATCH v3 5/6] powerpc/pseries: implement paravirt qspinlocks for SPLPAR
Date: Thu, 23 Jul 2020 18:32:36 +0000	[thread overview]
Message-ID: <845de183-56f5-2958-3159-faa131d46401@redhat.com> (raw)
In-Reply-To: <20200723140011.GR5523@worktop.programming.kicks-ass.net>

On 7/23/20 10:00 AM, Peter Zijlstra wrote:
> On Thu, Jul 09, 2020 at 12:06:13PM -0400, Waiman Long wrote:
>> We don't really need to do a pv_spinlocks_init() if pv_kick() isn't
>> supported.
> Waiman, if you cannot explain how not having kick is a sane thing, what
> are you saying here?
>
The current PPC paravirt spinlock code doesn't do any cpu kick. It does 
an equivalence of pv_wait by yielding the cpu to the lock holder only. 
The pv_spinlocks_init() is for setting up the hash table for doing 
pv_kick. If we don't need to do pv_kick, we don't need the hash table.

I am not saying that pv_kick is not needed for the PPC environment. I 
was just trying to adapt the pvqspinlock code to such an environment 
first. Further investigation on how to implement some kind of pv_kick 
will be something that we may want to do as a follow on.

BTW, do you have any comment on my v2 lock holder cpu info qspinlock 
patch? I will have to update the patch to fix the reported 0-day test 
problem, but I want to collect other feedback before sending out v3.

Cheers,
Longman

  reply	other threads:[~2020-07-23 18:32 UTC|newest]

Thread overview: 153+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-06  4:35 [PATCH v3 0/6] powerpc: queued spinlocks and rwlocks Nicholas Piggin
2020-07-06  4:35 ` Nicholas Piggin
2020-07-06  4:35 ` Nicholas Piggin
2020-07-06  4:35 ` [PATCH v3 1/6] powerpc/powernv: must include hvcall.h to get PAPR defines Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-09 10:05   ` Michael Ellerman
2020-07-09 10:05     ` Michael Ellerman
2020-07-09 10:05     ` Michael Ellerman
2020-07-09 10:05     ` Michael Ellerman
2020-07-09 10:05     ` Michael Ellerman
2020-07-06  4:35 ` [PATCH v3 2/6] powerpc/pseries: move some PAPR paravirt functions to their own file Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-09 10:11   ` Michael Ellerman
2020-07-09 10:11     ` Michael Ellerman
2020-07-09 10:11     ` Michael Ellerman
2020-07-09 10:11     ` Michael Ellerman
2020-07-09 10:11     ` Michael Ellerman
2020-07-06  4:35 ` [PATCH v3 3/6] powerpc: move spinlock implementation to simple_spinlock Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-09 10:15   ` Michael Ellerman
2020-07-09 10:15     ` Michael Ellerman
2020-07-09 10:15     ` Michael Ellerman
2020-07-09 10:15     ` Michael Ellerman
2020-07-09 10:15     ` Michael Ellerman
2020-07-06  4:35 ` [PATCH v3 4/6] powerpc/64s: implement queued spinlocks and rwlocks Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-09 10:20   ` Michael Ellerman
2020-07-09 10:20     ` Michael Ellerman
2020-07-09 10:20     ` Michael Ellerman
2020-07-09 10:20     ` Michael Ellerman
2020-07-09 10:20     ` Michael Ellerman
2020-07-09 10:33     ` Peter Zijlstra
2020-07-09 10:33       ` Peter Zijlstra
2020-07-09 10:33       ` Peter Zijlstra
2020-07-23 14:37   ` Michal Suchánek
2020-07-23 14:37     ` Michal Suchánek
2020-07-23 14:37     ` Michal Suchánek
2020-07-06  4:35 ` [PATCH v3 5/6] powerpc/pseries: implement paravirt qspinlocks for SPLPAR Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-09 10:53   ` Michael Ellerman
2020-07-09 10:53     ` Michael Ellerman
2020-07-09 10:53     ` Michael Ellerman
2020-07-09 10:53     ` Michael Ellerman
2020-07-09 10:53     ` Michael Ellerman
2020-07-09 11:03     ` Peter Zijlstra
2020-07-09 11:03       ` Peter Zijlstra
2020-07-09 11:03       ` Peter Zijlstra
2020-07-09 16:06     ` Waiman Long
2020-07-09 16:06       ` Waiman Long
2020-07-09 16:06       ` Waiman Long
2020-07-23 14:00       ` Peter Zijlstra
2020-07-23 14:00         ` Peter Zijlstra
2020-07-23 14:00         ` Peter Zijlstra
2020-07-23 18:32         ` Waiman Long [this message]
2020-07-23 18:32           ` Waiman Long
2020-07-23 18:32           ` Waiman Long
2020-07-23 18:47           ` peterz
2020-07-23 18:47             ` peterz
2020-07-23 18:47             ` peterz
2020-07-23 18:47             ` peterz
2020-07-23 19:04             ` Waiman Long
2020-07-23 19:04               ` Waiman Long
2020-07-23 19:04               ` Waiman Long
2020-07-23 19:58               ` peterz
2020-07-23 19:58                 ` peterz
2020-07-23 19:58                 ` peterz
2020-07-23 20:30                 ` Segher Boessenkool
2020-07-23 20:30                   ` Segher Boessenkool
2020-07-23 20:30                   ` Segher Boessenkool
2020-07-23 21:58                 ` Waiman Long
2020-07-23 21:58                   ` Waiman Long
2020-07-23 21:58                   ` Waiman Long
2020-07-24  8:16             ` Will Deacon
2020-07-24  8:16               ` Will Deacon
2020-07-24  8:16               ` Will Deacon
2020-07-24 19:10               ` Waiman Long
2020-07-24 19:10                 ` Waiman Long
2020-07-24 19:10                 ` Waiman Long
2020-07-25  3:02                 ` Waiman Long
2020-07-25  3:02                   ` Waiman Long
2020-07-25  3:02                   ` Waiman Long
2020-07-25 17:26                 ` Peter Zijlstra
2020-07-25 17:26                   ` Peter Zijlstra
2020-07-25 17:26                   ` Peter Zijlstra
2020-07-25 17:26                   ` Peter Zijlstra
2020-07-25 17:36                   ` Waiman Long
2020-07-25 17:36                     ` Waiman Long
2020-07-25 17:36                     ` Waiman Long
2020-07-23 14:09     ` Nicholas Piggin
2020-07-23 14:09       ` Nicholas Piggin
2020-07-23 14:09       ` Nicholas Piggin
2020-07-06  4:35 ` [PATCH v3 6/6] powerpc/qspinlock: optimised atomic_try_cmpxchg_lock that adds the lock hint Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-06  4:35   ` Nicholas Piggin
2020-07-06 18:39 ` [PATCH v3 0/6] powerpc: queued spinlocks and rwlocks Waiman Long
2020-07-06 18:39   ` Waiman Long
2020-07-06 18:39   ` Waiman Long
2020-07-07  5:57   ` Nicholas Piggin
2020-07-07  5:57     ` Nicholas Piggin
2020-07-07  5:57     ` Nicholas Piggin
2020-07-08  3:33     ` Waiman Long
2020-07-08  3:33       ` Waiman Long
2020-07-08  3:33       ` Waiman Long
2020-07-08  5:10       ` Nicholas Piggin
2020-07-08  5:10         ` Nicholas Piggin
2020-07-08  5:10         ` Nicholas Piggin
2020-07-08 23:50         ` Waiman Long
2020-07-08 23:50           ` Waiman Long
2020-07-08 23:50           ` Waiman Long
2020-07-08 23:58           ` Waiman Long
2020-07-08 23:58             ` Waiman Long
2020-07-08 23:58             ` Waiman Long
2020-07-08  8:32       ` Peter Zijlstra
2020-07-08  8:32         ` Peter Zijlstra
2020-07-08  8:32         ` Peter Zijlstra
2020-07-08  8:32         ` Peter Zijlstra
2020-07-08 23:53         ` Waiman Long
2020-07-08 23:53           ` Waiman Long
2020-07-08 23:53           ` Waiman Long
2020-07-08  8:41     ` Peter Zijlstra
2020-07-08  8:41       ` Peter Zijlstra
2020-07-08  8:41       ` Peter Zijlstra
2020-07-08 23:54       ` Waiman Long
2020-07-08 23:54         ` Waiman Long
2020-07-08 23:54         ` Waiman Long
2020-07-09  8:31         ` Peter Zijlstra
2020-07-09  8:31           ` Peter Zijlstra
2020-07-09  8:31           ` Peter Zijlstra
2020-07-09  8:31           ` Peter Zijlstra
2020-07-21 11:20           ` Nicholas Piggin
2020-07-21 11:20             ` Nicholas Piggin
2020-07-21 11:20             ` Nicholas Piggin
2020-07-21 11:08       ` Nicholas Piggin
2020-07-21 11:08         ` Nicholas Piggin
2020-07-21 11:08         ` Nicholas Piggin
2020-07-21 11:08         ` Nicholas Piggin
2020-07-21 14:36         ` Waiman Long
2020-07-21 14:36           ` Waiman Long
2020-07-21 14:36           ` Waiman Long
2020-07-23 13:30           ` Nicholas Piggin
2020-07-23 13:30             ` Nicholas Piggin
2020-07-23 13:30             ` Nicholas Piggin
2020-07-23 14:29             ` Waiman Long
2020-07-23 14:29               ` Waiman Long
2020-07-23 14:29               ` Waiman Long
2020-07-23 16:12               ` Nicholas Piggin
2020-07-23 16:12                 ` Nicholas Piggin
2020-07-23 16:12                 ` Nicholas Piggin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=845de183-56f5-2958-3159-faa131d46401@redhat.com \
    --to=longman@redhat.com \
    --cc=anton@ozlabs.org \
    --cc=boqun.feng@gmail.com \
    --cc=kvm-ppc@vger.kernel.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mingo@redhat.com \
    --cc=mpe@ellerman.id.au \
    --cc=npiggin@gmail.com \
    --cc=peterz@infradead.org \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.