mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 05:48:40 +00:00
![David Teigland](/assets/img/avatar_default.png)
Slot numbers are assigned to nodes when they join the lockspace. The slot number chosen is the minimum unused value starting at 1. Once a node is assigned a slot, that slot number will not change while the node remains a lockspace member. If the node leaves and rejoins it can be assigned a new slot number. A new generation number is also added to a lockspace. It is set and incremented during each recovery along with the slot collection/assignment. The slot numbers will be passed to gfs2 which will use them as journal id's. Signed-off-by: David Teigland <teigland@redhat.com>
32 lines
1.4 KiB
C
32 lines
1.4 KiB
C
/******************************************************************************
|
|
*******************************************************************************
|
|
**
|
|
** Copyright (C) 2005-2008 Red Hat, Inc. All rights reserved.
|
|
**
|
|
** This copyrighted material is made available to anyone wishing to use,
|
|
** modify, copy, or redistribute it subject to the terms and conditions
|
|
** of the GNU General Public License v.2.
|
|
**
|
|
*******************************************************************************
|
|
******************************************************************************/
|
|
|
|
#ifndef __MEMBER_DOT_H__
|
|
#define __MEMBER_DOT_H__
|
|
|
|
int dlm_ls_stop(struct dlm_ls *ls);
|
|
int dlm_ls_start(struct dlm_ls *ls);
|
|
void dlm_clear_members(struct dlm_ls *ls);
|
|
void dlm_clear_members_gone(struct dlm_ls *ls);
|
|
int dlm_recover_members(struct dlm_ls *ls, struct dlm_recover *rv,int *neg_out);
|
|
int dlm_is_removed(struct dlm_ls *ls, int nodeid);
|
|
int dlm_is_member(struct dlm_ls *ls, int nodeid);
|
|
int dlm_slots_version(struct dlm_header *h);
|
|
void dlm_slot_save(struct dlm_ls *ls, struct dlm_rcom *rc,
|
|
struct dlm_member *memb);
|
|
void dlm_slots_copy_out(struct dlm_ls *ls, struct dlm_rcom *rc);
|
|
int dlm_slots_copy_in(struct dlm_ls *ls);
|
|
int dlm_slots_assign(struct dlm_ls *ls, int *num_slots, int *slots_size,
|
|
struct dlm_slot **slots_out, uint32_t *gen_out);
|
|
|
|
#endif /* __MEMBER_DOT_H__ */
|
|
|