diff for duplicates of <87r1xhz6qp.fsf@nanos.tec.linutronix.de>
diff --git a/a/content_digest b/N1/content_digest
index 322852b..d2a3b48 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -33,33 +33,7 @@
" linux-usb\@vger.kernel.org",
" Kalle Valo <kvalo\@codeaurora.org>",
" David S. Miller <davem\@davemloft.net>",
- " linux-wireless\@vger.kernel.org",
- " netdev\@vger.kernel.org",
- " Darren Hart <dvhart\@infradead.org>",
- " Andy Shevchenko <andy\@infradead.org>",
- " platform-driver-x86\@vger.kernel.org",
- " Zhang Rui <rui.zhang\@intel.com>",
- " Rafael J. Wysocki <rafael.j.wysocki\@intel.com>",
- " linux-pm\@vger.kernel.org",
- " Len Brown <lenb\@kernel.org>",
- " linux-acpi\@vger.kernel.org",
- " kbuild test robot <lkp\@intel.com>",
- " Nick Hu <nickhu\@andestech.com>",
- " Greentime Hu <green.hu\@gmail.com>",
- " Vincent Chen <deanbo422\@gmail.com>",
- " Guo Ren <guoren\@kernel.org>",
- " linux-csky\@vger.kernel.org",
- " Brian Cain <bcain\@codeaurora.org>",
- " linux-hexagon\@vger.kernel.org",
- " Tony Luck <tony.luck\@intel.com>",
- " Fenghua Yu <fenghua.yu\@intel.com>",
- " linux-ia64\@vger.kernel.org",
- " Michal Simek <monstr\@monstr.eu>",
- " Michael Ellerman <mpe\@ellerman.id.au>",
- " Arnd Bergmann <arnd\@arndb.de>",
- " Geoff Levand <geoff\@infradead.org>",
- " linuxppc-dev\@lists.ozlabs.org",
- " Davidlohr Bueso <dbueso\@suse.de>\0"
+ " linux-wireless\@vger.kernel.orgnet\0"
]
[
"\0000:1\0"
@@ -366,4 +340,4 @@
"+CONFIG_PREEMPT_RT and otherwise."
]
-92a757234b9f604f06c98f555ed86d22c4cb1e3ffbba92710c3a39eb4b75edd3
+59885f5ecc1201a7cfd87c1d4d886004fd5f92e1ac3fb56efd02045eeef26363
diff --git a/a/content_digest b/N2/content_digest
index 322852b..ff3d153 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -14,52 +14,51 @@
"To\0paulmck\@kernel.org\0"
]
[
- "Cc\0LKML <linux-kernel\@vger.kernel.org>",
+ "Cc\0linux-usb\@vger.kernel.org",
+ " linux-ia64\@vger.kernel.org",
" Peter Zijlstra <peterz\@infradead.org>",
- " Ingo Molnar <mingo\@kernel.org>",
+ " linux-pci\@vger.kernel.org",
" Sebastian Siewior <bigeasy\@linutronix.de>",
- " Linus Torvalds <torvalds\@linux-foundation.org>",
- " Joel Fernandes <joel\@joelfernandes.org>",
" Oleg Nesterov <oleg\@redhat.com>",
+ " Guo Ren <guoren\@kernel.org>",
+ " Joel Fernandes <joel\@joelfernandes.org>",
+ " Vincent Chen <deanbo422\@gmail.com>",
+ " Ingo Molnar <mingo\@kernel.org>",
" Davidlohr Bueso <dave\@stgolabs.net>",
+ " linux-acpi\@vger.kernel.org",
+ " Brian Cain <bcain\@codeaurora.org>",
" Jonathan Corbet <corbet\@lwn.net>",
- " Randy Dunlap <rdunlap\@infradead.org>",
- " Logan Gunthorpe <logang\@deltatee.com>",
- " Bjorn Helgaas <bhelgaas\@google.com>",
- " Kurt Schwemmer <kurt.schwemmer\@microsemi.com>",
- " linux-pci\@vger.kernel.org",
- " Greg Kroah-Hartman <gregkh\@linuxfoundation.org>",
- " Felipe Balbi <balbi\@kernel.org>",
- " linux-usb\@vger.kernel.org",
- " Kalle Valo <kvalo\@codeaurora.org>",
- " David S. Miller <davem\@davemloft.net>",
- " linux-wireless\@vger.kernel.org",
- " netdev\@vger.kernel.org",
+ " linux-hexagon\@vger.kernel.org",
+ " Rafael J. Wysocki <rafael.j.wysocki\@intel.com>",
+ " linux-csky\@vger.kernel.org",
+ " Linus Torvalds <torvalds\@linux-foundation.org>",
" Darren Hart <dvhart\@infradead.org>",
- " Andy Shevchenko <andy\@infradead.org>",
- " platform-driver-x86\@vger.kernel.org",
" Zhang Rui <rui.zhang\@intel.com>",
- " Rafael J. Wysocki <rafael.j.wysocki\@intel.com>",
- " linux-pm\@vger.kernel.org",
" Len Brown <lenb\@kernel.org>",
- " linux-acpi\@vger.kernel.org",
- " kbuild test robot <lkp\@intel.com>",
- " Nick Hu <nickhu\@andestech.com>",
- " Greentime Hu <green.hu\@gmail.com>",
- " Vincent Chen <deanbo422\@gmail.com>",
- " Guo Ren <guoren\@kernel.org>",
- " linux-csky\@vger.kernel.org",
- " Brian Cain <bcain\@codeaurora.org>",
- " linux-hexagon\@vger.kernel.org",
- " Tony Luck <tony.luck\@intel.com>",
" Fenghua Yu <fenghua.yu\@intel.com>",
- " linux-ia64\@vger.kernel.org",
- " Michal Simek <monstr\@monstr.eu>",
- " Michael Ellerman <mpe\@ellerman.id.au>",
" Arnd Bergmann <arnd\@arndb.de>",
- " Geoff Levand <geoff\@infradead.org>",
+ " linux-pm\@vger.kernel.org",
" linuxppc-dev\@lists.ozlabs.org",
- " Davidlohr Bueso <dbueso\@suse.de>\0"
+ " Greentime Hu <green.hu\@gmail.com>",
+ " Bjorn Helgaas <bhelgaas\@google.com>",
+ " Kurt Schwemmer <kurt.schwemmer\@microsemi.com>",
+ " platform-driver-x86\@vger.kernel.org",
+ " Kalle Valo <kvalo\@codeaurora.org>",
+ " kbuild test robot <lkp\@intel.com>",
+ " Felipe Balbi <balbi\@kernel.org>",
+ " Michal Simek <monstr\@monstr.eu>",
+ " Tony Luck <tony.luck\@intel.com>",
+ " Nick Hu <nickhu\@andestech.com>",
+ " Geoff Levand <geoff\@infradead.org>",
+ " netdev\@vger.kernel.org",
+ " Randy Dunlap <rdunlap\@infradead.org>",
+ " linux-wireless\@vger.kernel.org",
+ " LKML <linux-kernel\@vger.kernel.org>",
+ " Davidlohr Bueso <dbueso\@suse.de>",
+ " Greg Kroah-Hartman <gregkh\@linuxfoundation.org>",
+ " Logan Gunthorpe <logang\@deltatee.com>",
+ " David S. Miller <davem\@davemloft.net>",
+ " Andy Shevchenko <andy\@infradead.org>\0"
]
[
"\0000:1\0"
@@ -366,4 +365,4 @@
"+CONFIG_PREEMPT_RT and otherwise."
]
-92a757234b9f604f06c98f555ed86d22c4cb1e3ffbba92710c3a39eb4b75edd3
+243f13754b32dfcef3fb857a697400df1e40fa6e7cd737335bf72b3527317e25
diff --git a/a/1.txt b/N3/1.txt
index d751e5a..4ebdcec 100644
--- a/a/1.txt
+++ b/N3/1.txt
@@ -12,7 +12,7 @@ Paul,
> state = SLEEPONLOCK
>
> lock wakeup
-> state = real_state == UNINTERRUPTIBLE
+> state = real_state = UNINTERRUPTIBLE
>
> This sequence of events can occur when the task acquires spinlocks
> on its way to sleeping, for example, in a call to wait_event().
@@ -30,7 +30,7 @@ Paul,
> real_state = RUNNING
>
> lock wakeup
-> state = real_state == RUNNING
+> state = real_state = RUNNING
>
> Without this real_state subterfuge, the wakeup might be lost.
@@ -103,11 +103,10 @@ Thanks,
+++ b/Documentation/locking/locktypes.rst
@@ -67,6 +67,17 @@ Spinning locks implicitly disable preemp
_irqsave/restore() Save and disable / restore interrupt disabled state
- =================== ====================================================
+ ========== ==========================
+Owner semantics
-+===============
-+
++=======+
+The aforementioned lock types except semaphores have strict owner
+semantics:
+
@@ -118,14 +117,12 @@ Thanks,
+
rtmutex
- =======
-@@ -83,6 +94,51 @@ interrupt handlers and soft interrupts.
+ ===@@ -83,6 +94,51 @@ interrupt handlers and soft interrupts.
and rwlock_t to be implemented via RT-mutexes.
+sempahore
-+=========
-+
++====+
+semaphore is a counting semaphore implementation.
+
+Semaphores are often used for both serialization and waiting, but new use
@@ -143,7 +140,7 @@ Thanks,
+
+
+rw_sempahore
-+============
++======
+
+rw_semaphore is a multiple readers and single writer lock mechanism.
+
@@ -169,8 +166,7 @@ Thanks,
+
+
raw_spinlock_t and spinlock_t
- =============================
-
+ ==============
@@ -140,7 +196,16 @@ On a PREEMPT_RT enabled kernel spinlock_
kernels leave task state untouched. However, PREEMPT_RT must change
task state if the task blocks during acquisition. Therefore, it saves
@@ -212,7 +208,7 @@ Thanks,
+
rwlock_t
- ========
+ ====
@@ -228,17 +308,16 @@ while holding normal non-raw spinlocks b
bit spinlocks
-------------
@@ -265,8 +261,7 @@ Thanks,
-
-
-Owner semantics
--===============
--
+-=======-
-Most lock types in the Linux kernel have strict owner semantics, i.e. the
-context (task) which acquires a lock has to release it.
-
diff --git a/a/content_digest b/N3/content_digest
index 322852b..7cfa8cd 100644
--- a/a/content_digest
+++ b/N3/content_digest
@@ -1,3 +1,6 @@
+[
+ "ref\00020200321113242.026561244\@linutronix.de\0"
+]
[
"ref\00020200323025501.GE3199\@paulmck-ThinkPad-P72\0"
]
@@ -8,7 +11,7 @@
"Subject\0Re: [patch V3 13/20] Documentation: Add lock ordering and nesting documentation\0"
]
[
- "Date\0Wed, 25 Mar 2020 00:13:34 +0100\0"
+ "Date\0Tue, 24 Mar 2020 23:13:34 +0000\0"
]
[
"To\0paulmck\@kernel.org\0"
@@ -82,7 +85,7 @@
"> state = SLEEPONLOCK\n",
">\n",
"> lock wakeup\n",
- "> state = real_state == UNINTERRUPTIBLE\n",
+ "> state = real_state = UNINTERRUPTIBLE\n",
">\n",
"> This sequence of events can occur when the task acquires spinlocks\n",
"> on its way to sleeping, for example, in a call to wait_event().\n",
@@ -100,7 +103,7 @@
"> real_state = RUNNING\n",
">\n",
"> lock wakeup\n",
- "> state = real_state == RUNNING\n",
+ "> state = real_state = RUNNING\n",
">\n",
"> Without this real_state subterfuge, the wakeup might be lost.\n",
"\n",
@@ -173,11 +176,10 @@
"+++ b/Documentation/locking/locktypes.rst\n",
"\@\@ -67,6 +67,17 \@\@ Spinning locks implicitly disable preemp\n",
" _irqsave/restore() Save and disable / restore interrupt disabled state\n",
- " =================== ====================================================\n",
+ " ========== ==========================\n",
" \n",
"+Owner semantics\n",
- "+===============\n",
- "+\n",
+ "+=======+\n",
"+The aforementioned lock types except semaphores have strict owner\n",
"+semantics:\n",
"+\n",
@@ -188,14 +190,12 @@
"+\n",
" \n",
" rtmutex\n",
- " =======\n",
- "\@\@ -83,6 +94,51 \@\@ interrupt handlers and soft interrupts.\n",
+ " ===\@\@ -83,6 +94,51 \@\@ interrupt handlers and soft interrupts.\n",
" and rwlock_t to be implemented via RT-mutexes.\n",
" \n",
" \n",
"+sempahore\n",
- "+=========\n",
- "+\n",
+ "+====+\n",
"+semaphore is a counting semaphore implementation.\n",
"+\n",
"+Semaphores are often used for both serialization and waiting, but new use\n",
@@ -213,7 +213,7 @@
"+\n",
"+\n",
"+rw_sempahore\n",
- "+============\n",
+ "+======\n",
"+\n",
"+rw_semaphore is a multiple readers and single writer lock mechanism.\n",
"+\n",
@@ -239,8 +239,7 @@
"+\n",
"+\n",
" raw_spinlock_t and spinlock_t\n",
- " =============================\n",
- " \n",
+ " ============== \n",
"\@\@ -140,7 +196,16 \@\@ On a PREEMPT_RT enabled kernel spinlock_\n",
" kernels leave task state untouched. However, PREEMPT_RT must change\n",
" task state if the task blocks during acquisition. Therefore, it saves\n",
@@ -282,7 +281,7 @@
"+\n",
" \n",
" rwlock_t\n",
- " ========\n",
+ " ====\n",
"\@\@ -228,17 +308,16 \@\@ while holding normal non-raw spinlocks b\n",
" bit spinlocks\n",
" -------------\n",
@@ -335,8 +334,7 @@
"-\n",
"-\n",
"-Owner semantics\n",
- "-===============\n",
- "-\n",
+ "-=======-\n",
"-Most lock types in the Linux kernel have strict owner semantics, i.e. the\n",
"-context (task) which acquires a lock has to release it.\n",
"-\n",
@@ -366,4 +364,4 @@
"+CONFIG_PREEMPT_RT and otherwise."
]
-92a757234b9f604f06c98f555ed86d22c4cb1e3ffbba92710c3a39eb4b75edd3
+1d85c0a5c545ccd9929f6717da10b609ad2bc1a98e5775df870ee9c77490afbd
diff --git a/a/content_digest b/N4/content_digest
index 322852b..5c97480 100644
--- a/a/content_digest
+++ b/N4/content_digest
@@ -34,32 +34,7 @@
" Kalle Valo <kvalo\@codeaurora.org>",
" David S. Miller <davem\@davemloft.net>",
" linux-wireless\@vger.kernel.org",
- " netdev\@vger.kernel.org",
- " Darren Hart <dvhart\@infradead.org>",
- " Andy Shevchenko <andy\@infradead.org>",
- " platform-driver-x86\@vger.kernel.org",
- " Zhang Rui <rui.zhang\@intel.com>",
- " Rafael J. Wysocki <rafael.j.wysocki\@intel.com>",
- " linux-pm\@vger.kernel.org",
- " Len Brown <lenb\@kernel.org>",
- " linux-acpi\@vger.kernel.org",
- " kbuild test robot <lkp\@intel.com>",
- " Nick Hu <nickhu\@andestech.com>",
- " Greentime Hu <green.hu\@gmail.com>",
- " Vincent Chen <deanbo422\@gmail.com>",
- " Guo Ren <guoren\@kernel.org>",
- " linux-csky\@vger.kernel.org",
- " Brian Cain <bcain\@codeaurora.org>",
- " linux-hexagon\@vger.kernel.org",
- " Tony Luck <tony.luck\@intel.com>",
- " Fenghua Yu <fenghua.yu\@intel.com>",
- " linux-ia64\@vger.kernel.org",
- " Michal Simek <monstr\@monstr.eu>",
- " Michael Ellerman <mpe\@ellerman.id.au>",
- " Arnd Bergmann <arnd\@arndb.de>",
- " Geoff Levand <geoff\@infradead.org>",
- " linuxppc-dev\@lists.ozlabs.org",
- " Davidlohr Bueso <dbueso\@suse.de>\0"
+ " net\0"
]
[
"\0000:1\0"
@@ -366,4 +341,4 @@
"+CONFIG_PREEMPT_RT and otherwise."
]
-92a757234b9f604f06c98f555ed86d22c4cb1e3ffbba92710c3a39eb4b75edd3
+93e1c390fcfb7b4b24260960dd06cab2372a61fbc6f71f865b10354d5201803c
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.