summaryrefslogtreecommitdiff
path: root/fs/dlm/lowcomms.c
diff options
context:
space:
mode:
authorAlexander Aring <aahringo@redhat.com>2024-08-02 20:26:46 +0300
committerDavid Teigland <teigland@redhat.com>2024-08-08 23:15:08 +0300
commitc846f732b97aa30ab91c03b0337cc0c8e27b24df (patch)
tree3e19b6dea753ed6d119126338ee0ed4944609861 /fs/dlm/lowcomms.c
parent5be323b0c64dbecdc33b43012f927e6af82d62d3 (diff)
downloadlinux-c846f732b97aa30ab91c03b0337cc0c8e27b24df.tar.xz
dlm: move lkb xarray lookup out of lock
This patch moves the xarray lookup functionality for the lkb out of the ls_lkbxa_lock read lock handling. We can do that as the xarray should be possible to access lockless in case of reader like xa_load(). We confirm under ls_lkbxa_lock that the lkb is still part of the data structure and take a reference when its still part of ls_lkbxa to avoid being freed after doing the lookup. To do a check if the lkb is still part of the ls_lkbxa data structure we use a kref_read() as the last put will remove it from the ls_lkbxa data structure and any reference taken means it is still part of ls_lkbxa. A similar approach was done with the DLM rsb rhashtable just with a flag instead of the refcounter because the refcounter has a slightly different meaning. Signed-off-by: Alexander Aring <aahringo@redhat.com> Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm/lowcomms.c')
0 files changed, 0 insertions, 0 deletions