mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-24 09:50:04 +00:00
![Al Viro](/assets/img/avatar_default.png)
We used to need rather convoluted ordering trickery to guarantee that dput() of ex-mountpoints happens before the final mntput() of the same. Since we don't need that anymore, there's no point playing with fs_pin for that. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
24 lines
539 B
C
24 lines
539 B
C
/* SPDX-License-Identifier: GPL-2.0 */
|
|
#include <linux/wait.h>
|
|
|
|
struct fs_pin {
|
|
wait_queue_head_t wait;
|
|
int done;
|
|
struct hlist_node s_list;
|
|
struct hlist_node m_list;
|
|
void (*kill)(struct fs_pin *);
|
|
};
|
|
|
|
struct vfsmount;
|
|
|
|
static inline void init_fs_pin(struct fs_pin *p, void (*kill)(struct fs_pin *))
|
|
{
|
|
init_waitqueue_head(&p->wait);
|
|
INIT_HLIST_NODE(&p->s_list);
|
|
INIT_HLIST_NODE(&p->m_list);
|
|
p->kill = kill;
|
|
}
|
|
|
|
void pin_remove(struct fs_pin *);
|
|
void pin_insert(struct fs_pin *, struct vfsmount *);
|
|
void pin_kill(struct fs_pin *);
|