Whamcloud - gitweb
LU-12043 llite: extend readahead locks for striped file 38/35438/7
authorWang Shilong <wshilong@ddn.com>
Thu, 8 Aug 2019 17:07:21 +0000 (13:07 -0400)
committerOleg Drokin <green@whamcloud.com>
Mon, 16 Sep 2019 23:03:08 +0000 (23:03 +0000)
commitcfbeae97d736152e5bdf8f3e759a260f6ee903d8
tree9b1134e1dc0df396e14a3b8b53f8f23485306942
parented9b653ed52b2ba05e3fe0a0cc72ec0943ec5fd0
LU-12043 llite: extend readahead locks for striped file

Currently cl_io_read_ahead() can not return locks
that cross stripe boundary at one time, thus readahead
will stop because of this reason.

This is really bad, as we will stop readahead every
time we hit stripe boundary, for example default stripe
size is 1M, this could hurt performances very much
especially with async readahead introduced.

So try to use existed locks aggressivly if there is no
lock contention, otherwise lock should be not
less than requested extent.

Change-Id: I8b2dcd0e80138ea530272cab6a665981aa00cca8
Signed-off-by: Wang Shilong <wshilong@ddn.com>
Reviewed-on: https://review.whamcloud.com/35438
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Li Xi <lixi@ddn.com>
Reviewed-by: Patrick Farrell <pfarrell@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/include/cl_object.h
lustre/llite/rw.c
lustre/osc/osc_io.c