mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-29 14:05:19 +08:00
5ce9ef30f2
This patch moves the dlm_purge_lkb_callbacks() function from ast to user dlm module as it is only a function being used by dlm user implementation. I got be hinted to hold specific locks regarding the callback handling for dlm_purge_lkb_callbacks() but it was false positive. It is confusing because ast dlm implementation uses a different locking behaviour as user locks uses as DLM handles kernel and user dlm locks differently. To avoid the confusing we move this function to dlm user implementation. Signed-off-by: Alexander Aring <aahringo@redhat.com> Signed-off-by: David Teigland <teigland@redhat.com>
38 lines
1.4 KiB
C
38 lines
1.4 KiB
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/******************************************************************************
|
|
*******************************************************************************
|
|
**
|
|
** Copyright (C) 2005-2010 Red Hat, Inc. All rights reserved.
|
|
**
|
|
**
|
|
*******************************************************************************
|
|
******************************************************************************/
|
|
|
|
#ifndef __ASTD_DOT_H__
|
|
#define __ASTD_DOT_H__
|
|
|
|
#define DLM_ENQUEUE_CALLBACK_NEED_SCHED 1
|
|
#define DLM_ENQUEUE_CALLBACK_SUCCESS 0
|
|
#define DLM_ENQUEUE_CALLBACK_FAILURE -1
|
|
int dlm_enqueue_lkb_callback(struct dlm_lkb *lkb, uint32_t flags, int mode,
|
|
int status, uint32_t sbflags);
|
|
#define DLM_DEQUEUE_CALLBACK_EMPTY 2
|
|
#define DLM_DEQUEUE_CALLBACK_LAST 1
|
|
#define DLM_DEQUEUE_CALLBACK_SUCCESS 0
|
|
int dlm_dequeue_lkb_callback(struct dlm_lkb *lkb, struct dlm_callback **cb);
|
|
void dlm_add_cb(struct dlm_lkb *lkb, uint32_t flags, int mode, int status,
|
|
uint32_t sbflags);
|
|
void dlm_callback_set_last_ptr(struct dlm_callback **from,
|
|
struct dlm_callback *to);
|
|
|
|
void dlm_release_callback(struct kref *ref);
|
|
void dlm_callback_work(struct work_struct *work);
|
|
int dlm_callback_start(struct dlm_ls *ls);
|
|
void dlm_callback_stop(struct dlm_ls *ls);
|
|
void dlm_callback_suspend(struct dlm_ls *ls);
|
|
void dlm_callback_resume(struct dlm_ls *ls);
|
|
|
|
#endif
|
|
|
|
|