Whamcloud - gitweb
LU-16160 osc: take ldlm lock when queue sync pages
authorBobi Jam <bobijam@whamcloud.com>
Thu, 15 Sep 2022 06:46:34 +0000 (14:46 +0800)
committerAndreas Dilger <adilger@whamcloud.com>
Sat, 1 Oct 2022 06:15:41 +0000 (06:15 +0000)
commit7bf6506efb60e7680c664bafacbfbf72b1b3f62a
treeed7f588cd5430d3ebe62490247b67b5d6f65d115
parentf162188e8ff35144b52cefba492fe660a1404381
LU-16160 osc: take ldlm lock when queue sync pages

osc_queue_sync_pages() add osc_extent to osc_object's IO extent
list without taking ldlm locks, and then it calls
osc_io_unplug_async() to queue the IO work for the client.

This patch make sync page queuing take ldlm lock in the
osc_extent.

Lustre-change: https://review.whamcloud.com/48557
Lustre-commit: 67aca1fcc6bed20794832decdba590a758d67d8fp

Signed-off-by: Bobi Jam <bobijam@whamcloud.com>
Change-Id: Idefa2981e62a2a6e10d8b8a7692c0337b61b9052
Reviewed-on: https://review.whamcloud.com/48597
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Alex Zhuravlev <bzzz@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lustre/include/lustre_osc.h
lustre/mdc/mdc_dev.c
lustre/osc/osc_cache.c
lustre/osc/osc_io.c
lustre/osc/osc_lock.c
lustre/tests/sanityn.sh