https://github.com/torvalds/linux
Revision fede766f28dd766d4e8feb321fdb19edb21ef6fb authored by Chris Mason on 27 April 2012, 18:23:22 UTC, committed by Chris Mason on 27 April 2012, 18:23:22 UTC
Btrfs has an optimization where it will preallocate dentries during
readdir to fill in enough information to open the inode without an extra
lookup.

But, we're calling d_alloc, which is doing GFP_KERNEL allocations, and
that leads to deadlocks because our readdir code has tree locks held.

For now, disable this optimization.  We'll fix the gfp mask in the next
merge window.

Signed-off-by: Chris Mason <chris.mason@oracle.com>
1 parent 7654b72
History
Tip revision: fede766f28dd766d4e8feb321fdb19edb21ef6fb authored by Chris Mason on 27 April 2012, 18:23:22 UTC
Btrfs: avoid deadlocks from GFP_KERNEL allocations during btrfs_real_readdir
Tip revision: fede766
File Mode Size
Documentation
arch
block
crypto
drivers
firmware
fs
include
init
ipc
kernel
lib
mm
net
samples
scripts
security
sound
tools
usr
virt
.gitignore -rw-r--r-- 1014 bytes
.mailmap -rw-r--r-- 4.2 KB
COPYING -rw-r--r-- 18.3 KB
CREDITS -rw-r--r-- 92.8 KB
Kbuild -rw-r--r-- 2.5 KB
Kconfig -rw-r--r-- 252 bytes
MAINTAINERS -rw-r--r-- 203.4 KB
Makefile -rw-r--r-- 52.2 KB
README -rw-r--r-- 17.0 KB
REPORTING-BUGS -rw-r--r-- 3.3 KB

README

back to top