aboutsummaryrefslogtreecommitdiff
path: root/fs/fuse/Makefile
diff options
context:
space:
mode:
authorGravatar Kirill Tkhai <ktkhai@virtuozzo.com> 2018-09-11 13:12:14 +0300
committerGravatar Miklos Szeredi <mszeredi@redhat.com> 2018-09-28 16:43:23 +0200
commitbe2ff42c5d6ebc8552c82a7d1697afae30510ed9 (patch)
tree34d256dcf2c28957a3a1deefe42cd6658f0ff4a3 /fs/fuse/Makefile
parentfuse: kill req->intr_unique (diff)
downloadlinux-be2ff42c5d6ebc8552c82a7d1697afae30510ed9.tar.gz
linux-be2ff42c5d6ebc8552c82a7d1697afae30510ed9.tar.bz2
linux-be2ff42c5d6ebc8552c82a7d1697afae30510ed9.zip
fuse: Use hash table to link processing request
We noticed the performance bottleneck in FUSE running our Virtuozzo storage over rdma. On some types of workload we observe 20% of times spent in request_find() in profiler. This function is iterating over long requests list, and it scales bad. The patch introduces hash table to reduce the number of iterations, we do in this function. Hash generating algorithm is taken from hash_add() function, while 256 lines table is used to store pending requests. This fixes problem and improves the performance. Reported-by: Alexey Kuznetsov <kuznet@virtuozzo.com> Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com> Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Diffstat (limited to 'fs/fuse/Makefile')
0 files changed, 0 insertions, 0 deletions