Commit 1a6c75d4 authored by Jeff Layton's avatar Jeff Layton Committed by Christian Brauner

filelock: convert locks_{insert,delete}_global_blocked

Have locks_insert_global_blocked and locks_delete_global_blocked take a
struct file_lock_core pointer.
Signed-off-by: default avatarJeff Layton <jlayton@kernel.org>
Link: https://lore.kernel.org/r/20240131-flsplit-v3-23-c6129007ee8d@kernel.orgReviewed-by: default avatarNeilBrown <neilb@suse.de>
Signed-off-by: default avatarChristian Brauner <brauner@kernel.org>
parent 4629172f
...@@ -635,19 +635,18 @@ posix_owner_key(struct file_lock_core *flc) ...@@ -635,19 +635,18 @@ posix_owner_key(struct file_lock_core *flc)
return (unsigned long) flc->flc_owner; return (unsigned long) flc->flc_owner;
} }
static void locks_insert_global_blocked(struct file_lock *waiter) static void locks_insert_global_blocked(struct file_lock_core *waiter)
{ {
lockdep_assert_held(&blocked_lock_lock); lockdep_assert_held(&blocked_lock_lock);
hash_add(blocked_hash, &waiter->c.flc_link, hash_add(blocked_hash, &waiter->flc_link, posix_owner_key(waiter));
posix_owner_key(&waiter->c));
} }
static void locks_delete_global_blocked(struct file_lock *waiter) static void locks_delete_global_blocked(struct file_lock_core *waiter)
{ {
lockdep_assert_held(&blocked_lock_lock); lockdep_assert_held(&blocked_lock_lock);
hash_del(&waiter->c.flc_link); hash_del(&waiter->flc_link);
} }
/* Remove waiter from blocker's block list. /* Remove waiter from blocker's block list.
...@@ -657,7 +656,7 @@ static void locks_delete_global_blocked(struct file_lock *waiter) ...@@ -657,7 +656,7 @@ static void locks_delete_global_blocked(struct file_lock *waiter)
*/ */
static void __locks_delete_block(struct file_lock *waiter) static void __locks_delete_block(struct file_lock *waiter)
{ {
locks_delete_global_blocked(waiter); locks_delete_global_blocked(&waiter->c);
list_del_init(&waiter->c.flc_blocked_member); list_del_init(&waiter->c.flc_blocked_member);
} }
...@@ -768,7 +767,7 @@ static void __locks_insert_block(struct file_lock *blocker, ...@@ -768,7 +767,7 @@ static void __locks_insert_block(struct file_lock *blocker,
list_add_tail(&waiter->c.flc_blocked_member, list_add_tail(&waiter->c.flc_blocked_member,
&blocker->c.flc_blocked_requests); &blocker->c.flc_blocked_requests);
if ((blocker->c.flc_flags & (FL_POSIX|FL_OFDLCK)) == FL_POSIX) if ((blocker->c.flc_flags & (FL_POSIX|FL_OFDLCK)) == FL_POSIX)
locks_insert_global_blocked(waiter); locks_insert_global_blocked(&waiter->c);
/* The requests in waiter->fl_blocked are known to conflict with /* The requests in waiter->fl_blocked are known to conflict with
* waiter, but might not conflict with blocker, or the requests * waiter, but might not conflict with blocker, or the requests
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment