diff options
author | Amir Goldstein <amir73il@gmail.com> | 2022-10-04 12:34:33 +0200 |
---|---|---|
committer | Miklos Szeredi <mszeredi@redhat.com> | 2022-12-08 10:49:46 +0100 |
commit | af4dcb6d78b2b05a0431dfd3f67713bba8dc0900 (patch) | |
tree | a77b4e78247c6bf0d6bd70961b7e34a84211a153 /fs/overlayfs/namei.c | |
parent | ovl: do not reconnect upper index records in ovl_indexdir_cleanup() (diff) | |
download | linux-af4dcb6d78b2b05a0431dfd3f67713bba8dc0900.tar.xz linux-af4dcb6d78b2b05a0431dfd3f67713bba8dc0900.zip |
ovl: use plain list filler in indexdir and workdir cleanup
Those two cleanup routines are using the helper ovl_dir_read() with the
merge dir filler, which populates an rb tree, that is never used.
The index dir entry names all have a long (42 bytes) constant prefix, so it
is not surprising that perf top has demostrated high CPU usage by rb tree
population during cleanup of a large index dir:
- 9.53% ovl_fill_merge
- 78.41% ovl_cache_entry_find_link.constprop.27
+ 72.11% strncmp
Use the plain list filler that does not populate the unneeded rb tree.
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/overlayfs/namei.c')
0 files changed, 0 insertions, 0 deletions