Lines Matching defs:dead_node

40 static void dlm_do_local_recovery_cleanup(struct dlm_ctxt *dlm, u8 dead_node);
46 static int dlm_remaster_locks(struct dlm_ctxt *dlm, u8 dead_node);
47 static int dlm_init_recovery_area(struct dlm_ctxt *dlm, u8 dead_node);
49 u8 request_from, u8 dead_node);
67 u8 dead_node, u8 send_to);
68 static int dlm_send_begin_reco_message(struct dlm_ctxt *dlm, u8 dead_node);
70 struct list_head *list, u8 dead_node);
72 u8 dead_node, u8 new_master);
103 u8 dead_node)
106 if (dlm->reco.dead_node != dead_node)
107 mlog(0, "%s: changing dead_node from %u to %u\n",
108 dlm->name, dlm->reco.dead_node, dead_node);
109 dlm->reco.dead_node = dead_node;
124 clear_bit(dlm->reco.dead_node, dlm->recovery_map);
245 dlm->reco.dead_node, dlm->reco.new_master);
404 dlm->reco.dead_node);
414 dlm->name, dlm->reco.dead_node);
433 dlm->reco.dead_node, dlm->name);
454 dlm->reco.new_master, dlm->reco.dead_node);
455 /* unset the new_master, leave dead_node */
460 if (dlm->reco.dead_node == O2NM_INVALID_NODE_NUM) {
468 } else if (!test_bit(dlm->reco.dead_node, dlm->recovery_map)) {
470 mlog(ML_ERROR, "dead_node %u no longer in recovery map!\n",
471 dlm->reco.dead_node);
475 if (dlm->reco.dead_node == O2NM_INVALID_NODE_NUM) {
483 dlm->reco.dead_node);
520 status = dlm_remaster_locks(dlm, dlm->reco.dead_node);
524 "retrying.\n", dlm->name, status, dlm->reco.dead_node);
531 dlm->name, dlm->reco.dead_node, dlm->node_num);
543 static int dlm_remaster_locks(struct dlm_ctxt *dlm, u8 dead_node)
554 status = dlm_init_recovery_area(dlm, dead_node);
578 dead_node);
617 ndata->node_num, dead_node);
625 ndata->node_num, dead_node);
630 ndata->node_num, dead_node);
635 ndata->node_num, dead_node);
666 dead_node);
710 dlm_finish_local_lockres_recovery(dlm, dead_node,
717 jiffies, dlm->reco.dead_node,
739 static int dlm_init_recovery_area(struct dlm_ctxt *dlm, u8 dead_node)
755 BUG_ON(num == dead_node);
789 u8 dead_node)
799 "to %u\n", dead_node, request_from);
803 lr.dead_node = dead_node;
813 request_from, dead_node);
833 if (lr->dead_node != dlm->reco.dead_node) {
834 mlog(ML_ERROR, "%s: node %u sent dead_node=%u, but local "
835 "dead_node is %u\n", dlm->name, lr->node_idx,
836 lr->dead_node, dlm->reco.dead_node);
842 BUG_ON(lr->dead_node != dlm->reco.dead_node);
862 item->u.ral.dead_node = lr->dead_node;
879 u8 dead_node, reco_master;
883 dead_node = item->u.ral.dead_node;
888 dlm->name, dead_node, reco_master);
890 if (dead_node != dlm->reco.dead_node ||
898 reco_master, dead_node, reco_master,
899 dlm->reco.dead_node, dlm->reco.new_master);
903 dlm->name, dlm->reco.dead_node,
904 dlm->reco.new_master, dead_node, reco_master);
915 dlm_move_reco_locks_to_list(dlm, &resources, dead_node);
927 reco_master, dead_node, ret);
939 ret = dlm_send_all_done_msg(dlm, dead_node, reco_master);
943 dlm->name, reco_master, dead_node, ret);
951 static int dlm_send_all_done_msg(struct dlm_ctxt *dlm, u8 dead_node, u8 send_to)
958 done_msg.dead_node = dead_node;
961 done_msg.dead_node);
968 dead_node);
989 mlog(0, "got DATA DONE: dead_node=%u, reco.dead_node=%u, "
990 "node_idx=%u, this node=%u\n", done->dead_node,
991 dlm->reco.dead_node, done->node_idx, dlm->node_num);
993 mlog_bug_on_msg((done->dead_node != dlm->reco.dead_node),
994 "Got DATA DONE: dead_node=%u, reco.dead_node=%u, "
995 "node_idx=%u, this node=%u\n", done->dead_node,
996 dlm->reco.dead_node, done->node_idx, dlm->node_num);
1045 u8 dead_node)
1058 if (lock->ml.node == dead_node) {
1062 dead_node, dlm->name);
1075 if (res->owner == dead_node) {
1078 dead_node);
1082 "for node %u. sending it.\n", dead_node);
2138 u8 dead_node, u8 new_master)
2147 if (res->owner == dead_node) {
2182 if (res->owner != dead_node &&
2219 struct dlm_lock_resource *res, u8 dead_node)
2233 search_node = dead_node;
2256 res->lockname.len, res->lockname.name, dead_node);
2262 struct dlm_lock_resource *res, u8 dead_node)
2279 if (lock->ml.node == dead_node) {
2288 if (lock->ml.node == dead_node) {
2297 if (lock->ml.node == dead_node) {
2309 res->lockname.len, res->lockname.name, freed, dead_node);
2310 if(!test_bit(dead_node, res->refmap)) {
2313 res->lockname.len, res->lockname.name, freed, dead_node);
2317 dlm_lockres_clear_refmap_bit(dlm, res, dead_node);
2318 } else if (test_bit(dead_node, res->refmap)) {
2321 res->lockname.len, res->lockname.name, dead_node);
2322 dlm_lockres_clear_refmap_bit(dlm, res, dead_node);
2329 static void dlm_do_local_recovery_cleanup(struct dlm_ctxt *dlm, u8 dead_node)
2339 dlm_clean_master_list(dlm, dead_node);
2364 if (lock->ml.node == dead_node) {
2368 dead_node, dlm->name);
2379 if ((res->owner == dead_node) &&
2388 dlm_lockres_clear_refmap_bit(dlm, res, dead_node);
2394 dlm_revalidate_lvb(dlm, res, dead_node);
2395 if (res->owner == dead_node) {
2402 res->lockname.name, dead_node);
2412 dlm_free_dead_locks(dlm, res, dead_node);
2415 if (test_bit(dead_node, res->refmap)) {
2419 res->lockname.name, dead_node);
2420 dlm_lockres_clear_refmap_bit(dlm, res, dead_node);
2438 * the new_master and dead_node. that recovery
2561 dlm->name, jiffies, dlm->reco.dead_node, dlm->node_num);
2588 if (dlm->reco.dead_node == O2NM_INVALID_NODE_NUM) {
2607 dlm->reco.dead_node, dlm->node_num);
2609 dlm->reco.dead_node);
2651 dlm->name, dlm->reco.new_master, dlm->reco.dead_node);
2678 static int dlm_send_begin_reco_message(struct dlm_ctxt *dlm, u8 dead_node)
2686 mlog(0, "%s: dead node is %u\n", dlm->name, dead_node);
2692 clear_bit(dead_node, iter.node_map);
2696 br.dead_node = dead_node;
2700 if (nodenum == dead_node) {
2702 "%u\n", dead_node);
2735 dead_node, nodenum);
2779 dlm->name, br->node_idx, br->dead_node,
2780 dlm->reco.dead_node, dlm->reco.new_master);
2788 dlm->name, br->node_idx, br->dead_node,
2789 dlm->reco.dead_node, dlm->reco.new_master);
2791 dlm_fire_domain_eviction_callbacks(dlm, br->dead_node);
2806 if (dlm->reco.dead_node != O2NM_INVALID_NODE_NUM) {
2807 mlog(ML_NOTICE, "%s: dead_node previously set to %u, "
2809 dlm->reco.dead_node, br->node_idx, br->dead_node);
2812 dlm_set_reco_dead_node(dlm, br->dead_node);
2813 if (!test_bit(br->dead_node, dlm->recovery_map)) {
2816 br->node_idx, br->dead_node, br->dead_node);
2817 if (!test_bit(br->dead_node, dlm->domain_map) ||
2818 !test_bit(br->dead_node, dlm->live_nodes_map))
2821 br->dead_node);
2824 set_bit(br->dead_node, dlm->domain_map);
2825 set_bit(br->dead_node, dlm->live_nodes_map);
2826 __dlm_hb_node_down(dlm, br->dead_node);
2833 dlm->name, br->node_idx, br->dead_node,
2834 dlm->reco.dead_node, dlm->reco.new_master);
2851 "stage %d\n", dlm->name, dlm->reco.dead_node, stage);
2860 fr.dead_node = dlm->reco.dead_node;
2913 fr->dead_node, dlm->reco.dead_node, dlm->reco.new_master);
2920 fr->node_idx, dlm->reco.new_master, fr->dead_node);
2923 if (dlm->reco.dead_node != fr->dead_node) {
2926 fr->node_idx, fr->dead_node, dlm->reco.dead_node);
2932 dlm_finish_local_lockres_recovery(dlm, fr->dead_node, fr->node_idx);
2937 dlm->name, fr->node_idx, fr->dead_node);
2949 dlm->name, fr->node_idx, fr->dead_node);
2961 dlm->name, fr->node_idx, dlm->reco.dead_node, dlm->reco.new_master);