https://github.com/torvalds/linux
Revision a6a5349d17f2a5c37079826f1a1474c3d08c6b53 authored by Sage Weil on 13 April 2010, 21:07:07 UTC, committed by Sage Weil on 13 April 2010, 21:07:07 UTC
Use a separate class for ceph sockets to prevent lockdep confusion.
Because ceph sockets only get passed kernel pointers, there is no
dependency from sk_lock -> mmap_sem.  If we share the same class as other
sockets, lockdep detects a circular dependency from

	mmap_sem (page fault) -> fs mutex -> sk_lock -> mmap_sem

because dependencies are noted from both ceph and user contexts.  Using
a separate class prevents the sk_lock(ceph) -> mmap_sem dependency and
makes lockdep happy.

Signed-off-by: Sage Weil <sage@newdream.net>
1 parent e1e4dd0
History
Tip revision: a6a5349d17f2a5c37079826f1a1474c3d08c6b53 authored by Sage Weil on 13 April 2010, 21:07:07 UTC
ceph: use separate class for ceph sockets' sk_lock
Tip revision: a6a5349
File Mode Size
.gitignore -rw-r--r-- 151 bytes
Kconfig -rw-r--r-- 4.8 KB
Makefile -rw-r--r-- 2.1 KB
gen_init_cpio.c -rw-r--r-- 12.3 KB
initramfs_data.S -rw-r--r-- 1021 bytes
initramfs_data.bz2.S -rw-r--r-- 1.0 KB
initramfs_data.gz.S -rw-r--r-- 1023 bytes
initramfs_data.lzma.S -rw-r--r-- 1.0 KB

back to top