lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140923052341.GA27825@gmail.com>
Date:	Tue, 23 Sep 2014 07:23:42 +0200
From:	Ingo Molnar <mingo@...nel.org>
To:	"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
Cc:	linux-kernel@...r.kernel.org, bobby.prani@...il.com,
	oleg@...hat.com, ard.biesheuvel@...aro.org, joe@...ches.com,
	rostedt@...dmis.org, dave@...olabs.net,
	Peter Zijlstra <a.p.zijlstra@...llo.nl>,
	Thomas Gleixner <tglx@...utronix.de>
Subject: Re: [GIT PULL rcu/next] RCU commits for 3.18


* Paul E. McKenney <paulmck@...ux.vnet.ibm.com> wrote:

> Hello, Ingo,
> 
> The changes in this series include:
> 
> 1.	Update RCU documentation.  These were posted to LKML at
> 	https://lkml.org/lkml/2014/8/28/378.
> 
> 2.	Miscellaneous fixes.  These were posted to LKML at
> 	https://lkml.org/lkml/2014/8/28/386.  An additional fix that
> 	eliminates a documented (but now inconvenient) deadlock between
> 	RCU hotplug and expedited grace periods was posted at
> 	https://lkml.org/lkml/2014/8/28/573.
> 
> 3.	Changes related to No-CBs CPUs and NO_HZ_FULL.  These were posted
> 	to LKML at https://lkml.org/lkml/2014/8/28/412.
> 
> 4.	Torture-test updates.  These were posted to LKML at
> 	https://lkml.org/lkml/2014/8/28/546 and at
> 	https://lkml.org/lkml/2014/9/11/1114.
> 
> 5.	RCU-tasks implementation.  These were posted to LKML at
> 	https://lkml.org/lkml/2014/8/28/540.
> 
> All of these have been exposed to -next testing.
> These changes are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next
> 
> for you to fetch changes up to dd56af42bd829c6e770ed69812bd65a04eaeb1e4:
> 
>   rcu: Eliminate deadlock between CPU hotplug and expedited grace periods (2014-09-18 16:22:27 -0700)
> 
> ----------------------------------------------------------------
> Ard Biesheuvel (1):
>       rcu: Define tracepoint strings only if CONFIG_TRACING is set
> 
> Davidlohr Bueso (9):
>       locktorture: Rename locktorture_runnable parameter
>       locktorture: Add documentation
>       locktorture: Support mutexes
>       locktorture: Teach about lock debugging
>       locktorture: Make statistics generic
>       torture: Address race in module cleanup
>       locktorture: Add infrastructure for torturing read locks
>       locktorture: Support rwsems
>       locktorture: Introduce torture context
> 
> Joe Perches (1):
>       rcu: Use pr_alert/pr_cont for printing logs
> 
> Oleg Nesterov (1):
>       rcu: Uninline rcu_read_lock_held()
> 
> Paul E. McKenney (46):
>       memory-barriers: Fix control-ordering no-transitivity example
>       memory-barriers: Retain barrier() in fold-to-zero example
>       memory-barriers: Fix description of 2-legged-if-based control dependencies
>       rcu: Break more call_rcu() deadlock involving scheduler and perf
>       rcu: Make TINY_RCU tinier by putting error checks under #ifdef
>       rcu: Replace flush_signals() with WARN_ON(signal_pending())
>       rcu: Add step to initrd documentation
>       rcutorture: Test partial nohz_full= configuration
>       rcutorture: Specify MAXSMP=y for TREE01
>       rcutorture: Specify CONFIG_CPUMASK_OFFSTACK=y for TREE07
>       rcutorture: Add callback-flood test
>       torture: Print PID in hung-kernel diagnostic message
>       torture: Check for nul bytes in console output
>       rcu: Add call_rcu_tasks()
>       rcu: Provide cond_resched_rcu_qs() to force quiescent states in long loops
>       rcu: Add synchronous grace-period waiting for RCU-tasks
>       rcu: Make TASKS_RCU handle tasks that are almost done exiting
>       rcutorture: Add torture tests for RCU-tasks
>       rcutorture: Add RCU-tasks test cases
>       rcu: Add stall-warning checks for RCU-tasks
>       rcu: Improve RCU-tasks energy efficiency
>       documentation: Add verbiage on RCU-tasks stall warning messages
>       rcu: Defer rcu_tasks_kthread() creation till first call_rcu_tasks()
>       rcu: Make TASKS_RCU handle nohz_full= CPUs
>       rcu: Make rcu_tasks_kthread()'s GP-wait loop allow preemption
>       rcu: Remove redundant preempt_disable() from rcu_note_voluntary_context_switch()
>       rcu: Additional information on RCU-tasks stall-warning messages
>       rcu: Remove local_irq_disable() in rcu_preempt_note_context_switch()
>       rcu: Per-CPU operation cleanups to rcu_*_qs() functions
>       rcutorture: Add RCU-tasks tests to default rcutorture list
>       rcu: Fix attempt to avoid unsolicited offloading of callbacks
>       rcu: Rationalize kthread spawning
>       rcu: Create rcuo kthreads only for onlined CPUs
>       rcu: Eliminate redundant rcu_sysidle_state variable
>       rcu: Don't track sysidle state if no nohz_full= CPUs
>       rcu: Avoid misordering in __call_rcu_nocb_enqueue()
>       rcu: Handle NOCB callbacks from irq-disabled idle code
>       rcu: Avoid misordering in nocb_leader_wait()
>       Merge branches 'doc.2014.09.07a', 'fixes.2014.09.10a', 'nocb-nohz.2014.09.16b' and 'torture.2014.09.07a' into HEAD
>       Merge branch 'rcu-tasks.2014.09.10a' into HEAD
>       locktorture: Make torture scripting account for new _runnable name
>       locktorture: Add test scenario for mutex_lock
>       locktorture: Add test scenario for rwsem_lock
>       rcutorture: Rename rcutorture_runnable parameter
>       locktorture: Document boot/module parameters
>       rcu: Eliminate deadlock between CPU hotplug and expedited grace periods
> 
> Pranith Kumar (18):
>       rcu: Remove remaining read-modify-write ACCESS_ONCE() calls
>       rcu: Fix sparse warning about rcu_batches_completed_preempt() being non-static
>       rcu: Use bool type for return value in rcu_is_watching()
>       rcu: Return bool type for rcu_try_advance_all_cbs()
>       rcu: Return bool type in rcu_lockdep_current_cpu_online()
>       rcu: Use true/false instead of 1/0 for a bool type
>       rcu: Update tiny.c references to tree.c
>       rcu: Remove stale comment in tree.c
>       rcu: Use rcu_gp_kthread_wake() to wake up grace period kthreads
>       rcutorture: Fix a sparse warning by marking boost_mutex static
>       rcutorture: Use bash shell for all the test scripts
>       rcutorture: Set executable bit and drop bash from Usage
>       rcu: Check the return value of zalloc_cpumask_var()
>       rcu: Use true/false for return in __call_rcu_nocb()
>       rcu: Use true/false for return in rcu_nocb_adopt_orphan_cbs()
>       rcu: Use false for return in __call_rcu_nocb()
>       rcu: Return false instead of 0 in rcu_nocb_adopt_orphan_cbs()
>       rcu: Check for have_rcu_nocb_mask instead of rcu_nocb_mask
> 
> Steven Rostedt (1):
>       rcu: Export RCU-tasks APIs to GPL modules
> 
>  Documentation/RCU/stallwarn.txt                    |  33 +-
>  Documentation/kernel-parameters.txt                |  68 +++-
>  Documentation/locking/locktorture.txt              | 142 ++++++++
>  Documentation/memory-barriers.txt                  | 128 +++----
>  fs/file.c                                          |   2 +-
>  include/linux/cpu.h                                |   2 +
>  include/linux/init_task.h                          |  12 +-
>  include/linux/lockdep.h                            |   1 +
>  include/linux/rcupdate.h                           | 106 +++---
>  include/linux/rcutiny.h                            |   2 +-
>  include/linux/sched.h                              |  39 +-
>  include/linux/torture.h                            |   5 +-
>  include/trace/events/rcu.h                         |   3 +
>  init/Kconfig                                       |  14 +-
>  init/main.c                                        |   1 +
>  kernel/cpu.c                                       |  16 +-
>  kernel/exit.c                                      |   3 +
>  kernel/locking/locktorture.c                       | 392 ++++++++++++++++----
>  kernel/rcu/rcutorture.c                            | 278 ++++++++++----
>  kernel/rcu/tiny.c                                  |  20 +-
>  kernel/rcu/tree.c                                  | 115 +++---
>  kernel/rcu/tree.h                                  |  18 +-
>  kernel/rcu/tree_plugin.h                           | 404 ++++++++++++++-------
>  kernel/rcu/update.c                                | 345 +++++++++++++++++-
>  kernel/softirq.c                                   |   2 +-
>  kernel/sysctl.c                                    |   9 -
>  kernel/torture.c                                   |  32 +-
>  mm/mlock.c                                         |   2 +-
>  .../selftests/rcutorture/bin/config2frag.sh        |   4 +-
>  .../selftests/rcutorture/bin/configcheck.sh        |   4 +-
>  .../testing/selftests/rcutorture/bin/configinit.sh |   4 +-
>  .../testing/selftests/rcutorture/bin/functions.sh  |  20 +
>  .../testing/selftests/rcutorture/bin/kvm-build.sh  |   2 +-
>  .../selftests/rcutorture/bin/kvm-recheck-lock.sh   |   2 +-
>  .../selftests/rcutorture/bin/kvm-recheck-rcu.sh    |   2 +-
>  .../selftests/rcutorture/bin/kvm-recheck.sh        |   2 +-
>  .../selftests/rcutorture/bin/kvm-test-1-run.sh     |   5 +-
>  tools/testing/selftests/rcutorture/bin/kvm.sh      |   6 +-
>  .../selftests/rcutorture/bin/parse-build.sh        |   5 +-
>  .../selftests/rcutorture/bin/parse-console.sh      |   9 +-
>  .../selftests/rcutorture/bin/parse-torture.sh      |   5 +-
>  .../selftests/rcutorture/configs/lock/CFLIST       |   2 +
>  .../selftests/rcutorture/configs/lock/LOCK02       |   6 +
>  .../selftests/rcutorture/configs/lock/LOCK02.boot  |   1 +
>  .../selftests/rcutorture/configs/lock/LOCK03       |   6 +
>  .../selftests/rcutorture/configs/lock/LOCK03.boot  |   1 +
>  .../rcutorture/configs/lock/ver_functions.sh       |   2 +-
>  .../selftests/rcutorture/configs/rcu/CFLIST        |   3 +
>  .../selftests/rcutorture/configs/rcu/TASKS01       |   9 +
>  .../selftests/rcutorture/configs/rcu/TASKS01.boot  |   1 +
>  .../selftests/rcutorture/configs/rcu/TASKS02       |   5 +
>  .../selftests/rcutorture/configs/rcu/TASKS02.boot  |   1 +
>  .../selftests/rcutorture/configs/rcu/TASKS03       |  13 +
>  .../selftests/rcutorture/configs/rcu/TASKS03.boot  |   1 +
>  .../selftests/rcutorture/configs/rcu/TREE01        |   4 +-
>  .../selftests/rcutorture/configs/rcu/TREE01.boot   |   2 +-
>  .../selftests/rcutorture/configs/rcu/TREE07        |   3 +-
>  .../selftests/rcutorture/configs/rcu/TREE07.boot   |   1 +
>  .../rcutorture/configs/rcu/ver_functions.sh        |   2 +-
>  tools/testing/selftests/rcutorture/doc/initrd.txt  |   1 +
>  60 files changed, 1798 insertions(+), 530 deletions(-)
>  create mode 100644 Documentation/locking/locktorture.txt
>  mode change 100644 => 100755 tools/testing/selftests/rcutorture/bin/config2frag.sh
>  mode change 100644 => 100755 tools/testing/selftests/rcutorture/bin/kvm.sh
>  create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK02
>  create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK02.boot
>  create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK03
>  create mode 100644 tools/testing/selftests/rcutorture/configs/lock/LOCK03.boot
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS01
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS01.boot
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS02
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS02.boot
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS03
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TASKS03.boot
>  create mode 100644 tools/testing/selftests/rcutorture/configs/rcu/TREE07.boot
> 

Pulled into tip:core/rcu, thanks Paul!

	Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ