ext4: fix dcache lookup of !casefolded directories
authorGabriel Krisman Bertazi <krisman@collabora.com>
Sat, 25 May 2019 03:48:23 +0000 (23:48 -0400)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 25 May 2019 03:48:23 +0000 (23:48 -0400)
commit66883da1eee8ad4b38eeff7fa1c86a097d9670fc
tree2aa59ae58d0ce4f7d01d7b35ecaf9d9bd8abf0a5
parentee0ed02ca93ef1ecf8963ad96638795d55af2c14
ext4: fix dcache lookup of !casefolded directories

Found by visual inspection, this wasn't caught by my xfstest, since it's
effect is ignoring positive dentries in the cache the fallback just goes
to the disk.  it was introduced in the last iteration of the
case-insensitive patch.

d_compare should return 0 when the entries match, so make sure we are
correctly comparing the entire string if the encoding feature is set and
we are on a case-INsensitive directory.

Fixes: b886ee3e778e ("ext4: Support case-insensitive file name lookups")
Signed-off-by: Gabriel Krisman Bertazi <krisman@collabora.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
fs/ext4/dir.c