public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Waiman Long <longman@redhat.com>
To: Sasha Levin <sashal@kernel.org>, Peter Zijlstra <peterz@infradead.org>
Cc: linux-kernel@vger.kernel.org, x86@kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH-tip v6 01/20] locking/rwsem: Prevent decrement of reader count before increment
Date: Sun, 28 Apr 2019 16:47:16 -0400	[thread overview]
Message-ID: <64a3b2e2-2a1a-0ca3-8023-4e56d951b4e8@redhat.com> (raw)
In-Reply-To: <20190428203916.E1AA6206A3@mail.kernel.org>

On 4/28/19 4:39 PM, Sasha Levin wrote:
> Hi,
>
> [This is an automated email]
>
> This commit has been processed because it contains a "Fixes:" tag,
> fixing commit: 70800c3c0cc5 locking/rwsem: Scan the wait_list for readers only once.
>
> The bot has tested the following trees: v5.0.10, v4.19.37, v4.14.114, v4.9.171.
>
> v5.0.10: Failed to apply! Possible dependencies:
>     412f34a82ccf ("locking/qspinlock_stat: Track the no MCS node available case")
>     46ad0840b158 ("locking/rwsem: Remove arch specific rwsem files")
>     579afe866f52 ("xtensa: use generic spinlock/rwlock implementation")
>     a8654596f037 ("locking/rwsem: Enable lock event counting")
>     ad53fa10fa9e ("locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs")
>     c7580c1e8443 ("locking/rwsem: Move owner setting code from rwsem.c to rwsem.h")
>     ce9084ba0d1d ("x86: Make ARCH_USE_MEMREMAP_PROT a generic Kconfig symbol")
>     d682b596d993 ("locking/qspinlock: Handle > 4 slowpath nesting levels")
>     eecec78f7777 ("locking/rwsem: Relocate rwsem_down_read_failed()")
>     fb346fd9fc08 ("locking/lock_events: Make lock_events available for all archs & other locks")
>
> v4.19.37: Failed to apply! Possible dependencies:
>     0fa809ca7f81 ("locking/pvqspinlock: Extend node size when pvqspinlock is configured")
>     1222109a5363 ("locking/qspinlock_stat: Count instances of nested lock slowpaths")
>     412f34a82ccf ("locking/qspinlock_stat: Track the no MCS node available case")
>     46ad0840b158 ("locking/rwsem: Remove arch specific rwsem files")
>     4b486b535c33 ("locking/rwsem: Exit read lock slowpath if queue empty & no writer")
>     925b9cd1b89a ("locking/rwsem: Make owner store task pointer of last owning reader")
>     a8654596f037 ("locking/rwsem: Enable lock event counting")
>     ad53fa10fa9e ("locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs")
>     c7580c1e8443 ("locking/rwsem: Move owner setting code from rwsem.c to rwsem.h")
>     ce9084ba0d1d ("x86: Make ARCH_USE_MEMREMAP_PROT a generic Kconfig symbol")
>     d682b596d993 ("locking/qspinlock: Handle > 4 slowpath nesting levels")
>     eecec78f7777 ("locking/rwsem: Relocate rwsem_down_read_failed()")
>     fb346fd9fc08 ("locking/lock_events: Make lock_events available for all archs & other locks")
>
> v4.14.114: Failed to apply! Possible dependencies:
>     0fa809ca7f81 ("locking/pvqspinlock: Extend node size when pvqspinlock is configured")
>     11752adb68a3 ("locking/pvqspinlock: Implement hybrid PV queued/unfair locks")
>     1222109a5363 ("locking/qspinlock_stat: Count instances of nested lock slowpaths")
>     1958b5fc4010 ("x86/boot: Add early boot support when running with SEV active")
>     1cd9c22fee3a ("x86/mm/encrypt: Move page table helpers into separate translation unit")
>     271ca788774a ("arch: enable relative relocations for arm64, power and x86")
>     412f34a82ccf ("locking/qspinlock_stat: Track the no MCS node available case")
>     81d3dc9a349b ("locking/qspinlock: Add stat tracking for pending vs. slowpath")
>     94d49eb30e85 ("x86/mm: Decouple dynamic __PHYSICAL_MASK from AMD SME")
>     a8654596f037 ("locking/rwsem: Enable lock event counting")
>     ad53fa10fa9e ("locking/qspinlock_stat: Introduce generic lockevent_*() counting APIs")
>     ce9084ba0d1d ("x86: Make ARCH_USE_MEMREMAP_PROT a generic Kconfig symbol")
>     d682b596d993 ("locking/qspinlock: Handle > 4 slowpath nesting levels")
>     d7b417fa08d1 ("x86/mm: Add DMA support for SEV memory encryption")
>     d8aa7eea78a1 ("x86/mm: Add Secure Encrypted Virtualization (SEV) support")
>     dfaaec9033b8 ("x86: Add support for changing memory encryption attribute in early boot")
>     fb346fd9fc08 ("locking/lock_events: Make lock_events available for all archs & other locks")
>
> v4.9.171: Failed to apply! Possible dependencies:
>     1a8b6d76dc5b ("net:add one common config ARCH_WANT_RELAX_ORDER to support relax ordering")
>     271ca788774a ("arch: enable relative relocations for arm64, power and x86")
>     29dee3c03abc ("locking/refcounts: Out-of-line everything")
>     40565b5aedd6 ("sched/cputime, powerpc, s390: Make scaled cputime arch specific")
>     4ad8622dc548 ("powerpc/8xx: Implement hw_breakpoint")
>     51c9c0843993 ("powerpc/kprobes: Implement Optprobes")
>     5b9ff0278598 ("powerpc: Build-time sort the exception table")
>     65c059bcaa73 ("powerpc: Enable support for GCC plugins")
>     9fea59bd7ca5 ("powerpc/mm: Add support for runtime configuration of ASLR limits")
>     a7d2475af7ae ("powerpc: Sort the selects under CONFIG_PPC")
>     a8654596f037 ("locking/rwsem: Enable lock event counting")
>     bd174169c7a1 ("locking/refcount: Add refcount_t API kernel-doc comments")
>     ce9084ba0d1d ("x86: Make ARCH_USE_MEMREMAP_PROT a generic Kconfig symbol")
>     d557d1b58b35 ("refcount: change EXPORT_SYMBOL markings")
>     ebfa50df435e ("powerpc: Add helper to check if offset is within relative branch range")
>     f405df5de317 ("refcount_t: Introduce a special purpose refcount type")
>     fa769d3f58e6 ("powerpc/32: Enable HW_BREAKPOINT on BOOK3S")
>     fb346fd9fc08 ("locking/lock_events: Make lock_events available for all archs & other locks")
>     fd25d19f6b8d ("locking/refcount: Create unchecked atomic_t implementation")
>
>
> How should we proceed with this patch?

I will send out a version that will be easier to backport once this
patch lands in the mainline.

Cheers,
Longman


  parent reply	other threads:[~2019-04-28 20:47 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-28 15:57 [PATCH-tip v6 00/20] locking/rwsem: Rwsem rearchitecture part 2 Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 01/20] locking/rwsem: Prevent decrement of reader count before increment Waiman Long
2019-04-28 16:07   ` Waiman Long
2019-04-28 17:41   ` Linus Torvalds
2019-04-28 17:59     ` Linus Torvalds
2019-04-28 19:40       ` Waiman Long
     [not found]   ` <20190428203916.E1AA6206A3@mail.kernel.org>
2019-04-28 20:47     ` Waiman Long [this message]
2019-04-28 15:57 ` [PATCH-tip v6 02/20] locking/rwsem: Make owner available even if !CONFIG_RWSEM_SPIN_ON_OWNER Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 03/20] locking/rwsem: Remove rwsem_wake() wakeup optimization Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 04/20] locking/rwsem: Implement a new locking scheme Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 05/20] locking/rwsem: Merge rwsem.h and rwsem-xadd.c into rwsem.c Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 06/20] locking/rwsem: Code cleanup after files merging Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 07/20] locking/rwsem: Make rwsem_spin_on_owner() return owner state Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 08/20] locking/rwsem: Implement lock handoff to prevent lock starvation Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 09/20] locking/rwsem: Always release wait_lock before waking up tasks Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 10/20] locking/rwsem: More optimal RT task handling of null owner Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 11/20] locking/rwsem: Wake up almost all readers in wait queue Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 12/20] locking/rwsem: Clarify usage of owner's nonspinaable bit Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 13/20] locking/rwsem: Enable readers spinning on writer Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 14/20] locking/rwsem: Enable time-based spinning on reader-owned rwsem Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 15/20] locking/rwsem: Adaptive disabling of reader optimistic spinning Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 16/20] locking/rwsem: Add more rwsem owner access helpers Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 17/20] locking/rwsem: Guard against making count negative Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 18/20] locking/rwsem: Merge owner into count on x86-64 Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 19/20] locking/rwsem: Remove redundant computation of writer lock word Waiman Long
2019-04-28 15:57 ` [PATCH-tip v6 20/20] locking/rwsem: Disable preemption in down_read*() if owner in count Waiman Long

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=64a3b2e2-2a1a-0ca3-8023-4e56d951b4e8@redhat.com \
    --to=longman@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peterz@infradead.org \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=x86@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox