dlm: cleanup plock_op vs plock_xop
authorAlexander Aring <aahringo@redhat.com>
Mon, 4 Apr 2022 20:06:32 +0000 (16:06 -0400)
committerDavid Teigland <teigland@redhat.com>
Wed, 6 Apr 2022 19:02:02 +0000 (14:02 -0500)
commitbcbb4ba6c9ba81e6975b642a2cade68044cd8a66
treefc4fa1c88a90af654722858dbfe86fc3eb60eb72
parenta559790caa1c6ce9e6cc52c6cb7bf04306653792
dlm: cleanup plock_op vs plock_xop

Lately the different casting between plock_op and plock_xop and list
holders which was involved showed some issues which were hard to see.
This patch removes the "plock_xop" structure and introduces a
"struct plock_async_data". This structure will be set in "struct plock_op"
in case of asynchronous lock handling as the original "plock_xop" was
made for. There is no need anymore to cast pointers around for
additional fields in case of asynchronous lock handling.  As disadvantage
another allocation was introduces but only needed in the asynchronous
case which is currently only used in combination with nfs lockd.

Signed-off-by: Alexander Aring <aahringo@redhat.com>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/plock.c