On Sun, 6 Jul 2025 22:27:17 -0700 Christoph Hellwig wrote: > But I wonder why generic_ci_match is even called that often. Both ext4 > and f2fs support hashed lookups, so you should usually only see it called > for the main match, plus the occasional hash false positive, which should > be rate if the hash works.
At present, in the latest version of Linux, in some scenarios, f2fs still uses linear search. The logic of linear search was introduced by Commit 91b587ba79e1 (f2fs: Introduce linear search for dentries). Commit 91b587ba79e1 was designed to solve the problem of inconsistent hashes before and after the rollback of Commit 5c26d2f1d3f5 ("unicode: Don't special case ignorable code points"), which led to files being inaccessible. In order to reduce the impact of linear search, in relatively new versions, the logic of turning off linear search has also been introduced. However, the triggering conditions for this turn - off logic on f2fs are rather strict: 1. Use the latest version of the fsck.f2fs tool to correct the file system. 2. Use a relatively new version of the kernel. (For example, linear search cannot be turned off in v6.6) The performance gain of this commit is very obvious in scenarios where linear search is not turned off. In scenarios where linear search is turned off, no performance problems will be introduced either. _______________________________________________ Linux-f2fs-devel mailing list Linux-f2fs-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel