diff options
author | Pavel Begunkov <asml.silence@gmail.com> | 2021-10-13 09:57:11 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2021-10-18 06:17:36 -0600 |
commit | fac7c6d529acf2b5428ad08c1b1127e29e570790 (patch) | |
tree | 4398d7651c06bb814bfc095fc217121dbbf15d4a /crypto/asymmetric_keys | |
parent | c712dccc64357b94f93e57882373e1365f0e2a56 (diff) |
block: cache bdev in struct file for raw bdev IO
bdev = &BDEV_I(file->f_mapping->host)->bdev
Getting struct block_device from a file requires 2 memory dereferences
as illustrated above, that takes a toll on performance, so cache it in
yet unused file->private_data. That gives a noticeable peak performance
improvement.
Signed-off-by: Pavel Begunkov <asml.silence@gmail.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/8415f9fe12e544b9da89593dfbca8de2b52efe03.1634115360.git.asml.silence@gmail.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'crypto/asymmetric_keys')
0 files changed, 0 insertions, 0 deletions