Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1742578 > unrolled thread

Re: [PATCH REBASED 3/6] s390: Add __down_read_killable()

Started byHeiko Carstens <heiko.carstens@de.ibm.com>
First post2017-09-30 11:30 +0200
Last post2017-09-30 12:50 +0200
Articles 4 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH REBASED 3/6] s390: Add __down_read_killable() Heiko Carstens <heiko.carstens@de.ibm.com> - 2017-09-30 11:30 +0200
    Re: [PATCH REBASED 3/6] s390: Add __down_read_killable() Heiko Carstens <heiko.carstens@de.ibm.com> - 2017-09-30 12:40 +0200
    Re: [PATCH REBASED 3/6] s390: Add __down_read_killable() Martin Schwidefsky <schwidefsky@de.ibm.com> - 2017-09-30 12:40 +0200
      Re: [PATCH REBASED 3/6] s390: Add __down_read_killable() Martin Schwidefsky <schwidefsky@de.ibm.com> - 2017-09-30 12:50 +0200

#1742578 — Re: [PATCH REBASED 3/6] s390: Add __down_read_killable()

FromHeiko Carstens <heiko.carstens@de.ibm.com>
Date2017-09-30 11:30 +0200
SubjectRe: [PATCH REBASED 3/6] s390: Add __down_read_killable()
Message-ID<uvmfU-2fB-17@gated-at.bofh.it>
On Fri, Sep 29, 2017 at 07:06:18PM +0300, Kirill Tkhai wrote:
> Similar to __down_write_killable(), and read killable primitive.
> 
> Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
> ---
>  arch/s390/include/asm/rwsem.h |   18 ++++++++++++++++--
>  1 file changed, 16 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/s390/include/asm/rwsem.h b/arch/s390/include/asm/rwsem.h

FWIW, while looking into this patch I realized that we never optimized our
rwsem primitives to make use of new atomic instructions.

The generic rwsem header file however does, since it uses atomic ops which
we did optimize. Even when compiling for old machines the generic version
generates better code. Therefore I will remove the 15 years old s390
implementation and switch to the generic version instead.

The same might be true for alpha and ia64...

[toc] | [next] | [standalone]


#1742592

FromHeiko Carstens <heiko.carstens@de.ibm.com>
Date2017-09-30 12:40 +0200
Message-ID<uvnlD-2UP-1@gated-at.bofh.it>
In reply to#1742578
On Sat, Sep 30, 2017 at 12:36:12PM +0200, Martin Schwidefsky wrote:
> On Sat, 30 Sep 2017 11:20:02 +0200
> Heiko Carstens <heiko.carstens@de.ibm.com> wrote:
> 
> > On Fri, Sep 29, 2017 at 07:06:18PM +0300, Kirill Tkhai wrote:
> > > Similar to __down_write_killable(), and read killable primitive.
> > > 
> > > Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
> > > ---
> > >  arch/s390/include/asm/rwsem.h |   18 ++++++++++++++++--
> > >  1 file changed, 16 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/arch/s390/include/asm/rwsem.h b/arch/s390/include/asm/rwsem.h  
> > 
> > FWIW, while looking into this patch I realized that we never optimized our
> > rwsem primitives to make use of new atomic instructions.
> > 
> > The generic rwsem header file however does, since it uses atomic ops which
> > we did optimize. Even when compiling for old machines the generic version
> > generates better code. Therefore I will remove the 15 years old s390
> > implementation and switch to the generic version instead.
> 
> Take care not to conflict with the queued spinlock/rwlock patches on the
> features branch. 
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git/commit/?h=features&id=eb3b7b848fb3dd00f7a57d633d4ae4d194aa7865
> 
> Me thinks that what you have in mind is already done.

No, it's not done. You probably mixed up rwlocks and rwsems?

[toc] | [prev] | [next] | [standalone]


#1742593

FromMartin Schwidefsky <schwidefsky@de.ibm.com>
Date2017-09-30 12:40 +0200
Message-ID<uvnlE-2UP-3@gated-at.bofh.it>
In reply to#1742578
On Sat, 30 Sep 2017 11:20:02 +0200
Heiko Carstens <heiko.carstens@de.ibm.com> wrote:

> On Fri, Sep 29, 2017 at 07:06:18PM +0300, Kirill Tkhai wrote:
> > Similar to __down_write_killable(), and read killable primitive.
> > 
> > Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
> > ---
> >  arch/s390/include/asm/rwsem.h |   18 ++++++++++++++++--
> >  1 file changed, 16 insertions(+), 2 deletions(-)
> > 
> > diff --git a/arch/s390/include/asm/rwsem.h b/arch/s390/include/asm/rwsem.h  
> 
> FWIW, while looking into this patch I realized that we never optimized our
> rwsem primitives to make use of new atomic instructions.
> 
> The generic rwsem header file however does, since it uses atomic ops which
> we did optimize. Even when compiling for old machines the generic version
> generates better code. Therefore I will remove the 15 years old s390
> implementation and switch to the generic version instead.

Take care not to conflict with the queued spinlock/rwlock patches on the
features branch. 

https://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git/commit/?h=features&id=eb3b7b848fb3dd00f7a57d633d4ae4d194aa7865

Me thinks that what you have in mind is already done.

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

[toc] | [prev] | [next] | [standalone]


#1742597

FromMartin Schwidefsky <schwidefsky@de.ibm.com>
Date2017-09-30 12:50 +0200
Message-ID<uvnvj-2Yw-5@gated-at.bofh.it>
In reply to#1742593
On Sat, 30 Sep 2017 12:36:12 +0200
Martin Schwidefsky <schwidefsky@de.ibm.com> wrote:

> On Sat, 30 Sep 2017 11:20:02 +0200
> Heiko Carstens <heiko.carstens@de.ibm.com> wrote:
> 
> > On Fri, Sep 29, 2017 at 07:06:18PM +0300, Kirill Tkhai wrote:  
> > > Similar to __down_write_killable(), and read killable primitive.
> > > 
> > > Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
> > > ---
> > >  arch/s390/include/asm/rwsem.h |   18 ++++++++++++++++--
> > >  1 file changed, 16 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/arch/s390/include/asm/rwsem.h b/arch/s390/include/asm/rwsem.h    
> > 
> > FWIW, while looking into this patch I realized that we never optimized our
> > rwsem primitives to make use of new atomic instructions.
> > 
> > The generic rwsem header file however does, since it uses atomic ops which
> > we did optimize. Even when compiling for old machines the generic version
> > generates better code. Therefore I will remove the 15 years old s390
> > implementation and switch to the generic version instead.  
> 
> Take care not to conflict with the queued spinlock/rwlock patches on the
> features branch. 
> 
> https://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git/commit/?h=features&id=eb3b7b848fb3dd00f7a57d633d4ae4d194aa7865
> 
> Me thinks that what you have in mind is already done.

Argh, pitfall rwlock != rwsem. Using the atomic_ops for the rwsem code makes
a lot of sense. Yes, please..

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web