[GIT PULL] locking changes for v3.13

From: Ingo Molnar
Date: Wed Nov 13 2013 - 12:34:10 EST


Linus,

Please pull the latest core-locking-for-linus git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core-locking-for-linus

# HEAD: 90d3839b90fe379557dae4a44735a6af78f42885 block: Use u64_stats_init() to initialize seqcounts

The biggest changes:

- add lockdep support for seqcount/seqlocks structures, this unearthed both bugs and required extra annotation.

- move the various kernel locking primitives to the new kernel/locking/ directory.

Thanks,

Ingo

[ Note: shortlog and diffstat was generated by hand. One trivial conflict in kernel/Makefile. ]
------------------>

Borislav Petkov (1):
lockdep, x86/alternatives: Drop ancient lockdep fixup message

Davidlohr Bueso (1):
lockstat: Report avg wait and hold times

Fengguang Wu (1):
locking/lockdep: Mark __lockdep_count_forward_deps() as static

Ingo Molnar (3):
Merge tag 'v3.12' into core/locking to pick up mutex upates
Merge branch 'core/rcu' into core/locking, to prepare the kernel/locking/ file move
Merge branch 'sched/core' into core/locking, to prepare the kernel/locking/ file move

John Stultz (4):
net: Explicitly initialize u64_stats_sync structures for lockdep
seqcount: Add lockdep functionality to seqcount/seqlock structures
cpuset: Fix potential deadlock w/ set_mems_allowed
ipv6: Fix possible ipv6 seqlock deadlock

Li Zefan (1):
hung_task: Change sysctl_hung_task_check_count to 'int'

Oleg Nesterov (1):
hung_task debugging: Add tracepoint to report the hang

Peter Zijlstra (11):
locking: Move the mutex code to kernel/locking/
locking: Move the lockdep code to kernel/locking/
locking: Move the spinlock code to kernel/locking/
locking: Move the semaphore core to kernel/locking/
locking: Move the rtmutex code to kernel/locking/
locking: Move the rwsem code to kernel/locking/
locking: Move the lglocks code to kernel/locking/
locking: Move the percpu-rwsem code to kernel/locking/
locking/doc: Update references to kernel/mutex.c
lockdep/proc: Fix lock-time avg computation
block: Use u64_stats_init() to initialize seqcounts

Raghavendra K T (1):
x86/locking/kconfig: Update paravirt spinlock Kconfig description


Documentation/DocBook/kernel-locking.tmpl | 2 +-
Documentation/lockstat.txt | 123 ++++++++++++-------------
Documentation/mutex-design.txt | 10 +-
arch/x86/Kconfig | 6 +-
arch/x86/kernel/alternative.c | 11 ---
arch/x86/vdso/vclock_gettime.c | 8 +-
block/blk-cgroup.h | 10 ++
block/blk-throttle.c | 10 ++
block/cfq-iosched.c | 25 +++++
drivers/net/dummy.c | 6 ++
drivers/net/ethernet/emulex/benet/be_main.c | 4 +
drivers/net/ethernet/intel/igb/igb_main.c | 5 +
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 4 +
drivers/net/ethernet/marvell/mvneta.c | 3 +
drivers/net/ethernet/marvell/sky2.c | 3 +
drivers/net/ethernet/neterion/vxge/vxge-main.c | 4 +
drivers/net/ethernet/nvidia/forcedeth.c | 2 +
drivers/net/ethernet/realtek/8139too.c | 3 +
drivers/net/ethernet/tile/tilepro.c | 2 +
drivers/net/ethernet/via/via-rhine.c | 3 +
drivers/net/ifb.c | 5 +
drivers/net/loopback.c | 6 ++
drivers/net/macvlan.c | 7 ++
drivers/net/nlmon.c | 8 ++
drivers/net/team/team.c | 6 ++
drivers/net/team/team_mode_loadbalance.c | 9 +-
drivers/net/veth.c | 8 ++
drivers/net/virtio_net.c | 8 ++
drivers/net/vxlan.c | 8 ++
drivers/net/xen-netfront.c | 6 ++
fs/dcache.c | 4 +-
fs/fs_struct.c | 2 +-
include/linux/cpuset.h | 4 +
include/linux/init_task.h | 8 +-
include/linux/lockdep.h | 8 +-
include/linux/mutex.h | 2 +-
include/linux/sched/sysctl.h | 2 +-
include/linux/seqlock.h | 79 ++++++++++++++--
include/linux/u64_stats_sync.h | 7 ++
include/trace/events/sched.h | 19 ++++
kernel/Makefile | 22 +----
kernel/futex.c | 2 +-
kernel/hung_task.c | 6 +-
kernel/locking/Makefile | 25 +++++
kernel/{ => locking}/lglock.c | 0
kernel/{ => locking}/lockdep.c | 4 +-
kernel/{ => locking}/lockdep_internals.h | 0
kernel/{ => locking}/lockdep_proc.c | 15 +--
kernel/{ => locking}/lockdep_states.h | 0
kernel/{ => locking}/mutex-debug.c | 0
kernel/{ => locking}/mutex-debug.h | 0
kernel/{ => locking}/mutex.c | 2 +-
kernel/{ => locking}/mutex.h | 0
{lib => kernel/locking}/percpu-rwsem.c | 0
kernel/{ => locking}/rtmutex-debug.c | 0
kernel/{ => locking}/rtmutex-debug.h | 0
kernel/{ => locking}/rtmutex-tester.c | 0
kernel/{ => locking}/rtmutex.c | 0
kernel/{ => locking}/rtmutex.h | 0
kernel/{ => locking}/rtmutex_common.h | 0
{lib => kernel/locking}/rwsem-spinlock.c | 0
lib/rwsem.c => kernel/locking/rwsem-xadd.c | 0
kernel/{ => locking}/rwsem.c | 0
kernel/{ => locking}/semaphore.c | 0
kernel/{ => locking}/spinlock.c | 0
{lib => kernel/locking}/spinlock_debug.c | 0
kernel/rcu/tree_plugin.h | 2 +-
kernel/sysctl.c | 5 +-
lib/Makefile | 4 -
mm/filemap_xip.c | 2 +-
net/8021q/vlan_dev.c | 9 +-
net/bridge/br_device.c | 7 ++
net/ipv4/af_inet.c | 14 +++
net/ipv4/ip_tunnel.c | 8 +-
net/ipv6/addrconf.c | 14 +++
net/ipv6/af_inet6.c | 14 +++
net/ipv6/ip6_gre.c | 15 +++
net/ipv6/ip6_output.c | 2 +-
net/ipv6/ip6_tunnel.c | 7 ++
net/ipv6/sit.c | 15 +++
net/netfilter/ipvs/ip_vs_ctl.c | 25 ++++-
net/openvswitch/datapath.c | 6 ++
net/openvswitch/vport.c | 8 ++
83 files changed, 535 insertions(+), 148 deletions(-)
create mode 100644 kernel/locking/Makefile
rename kernel/{ => locking}/lglock.c (100%)
rename kernel/{ => locking}/lockdep.c (99%)
rename kernel/{ => locking}/lockdep_internals.h (100%)
rename kernel/{ => locking}/lockdep_proc.c (97%)
rename kernel/{ => locking}/lockdep_states.h (100%)
rename kernel/{ => locking}/mutex-debug.c (100%)
rename kernel/{ => locking}/mutex-debug.h (100%)
rename kernel/{ => locking}/mutex.c (99%)
rename kernel/{ => locking}/mutex.h (100%)
rename {lib => kernel/locking}/percpu-rwsem.c (100%)
rename kernel/{ => locking}/rtmutex-debug.c (100%)
rename kernel/{ => locking}/rtmutex-debug.h (100%)
rename kernel/{ => locking}/rtmutex-tester.c (100%)
rename kernel/{ => locking}/rtmutex.c (100%)
rename kernel/{ => locking}/rtmutex.h (100%)
rename kernel/{ => locking}/rtmutex_common.h (100%)
rename {lib => kernel/locking}/rwsem-spinlock.c (100%)
rename lib/rwsem.c => kernel/locking/rwsem-xadd.c (100%)
rename kernel/{ => locking}/rwsem.c (100%)
rename kernel/{ => locking}/semaphore.c (100%)
rename kernel/{ => locking}/spinlock.c (100%)
rename {lib => kernel/locking}/spinlock_debug.c (100%)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/