Commit c288745
dlm: avoid blocking receive at the end of recovery
The end of the recovery process transitioned to normal message
processing by temporarily blocking the receiving context,
processing saved messages, then unblocking the receiving
context. To avoid blocking the receiving context, the old
wait_queue and mutex are replaced by a new rwlock and the new
RECV_MSG_BLOCKED flag. Received messages are added to the
list of saved messages, protected by the rwlock, until the
flag is cleared, which happens when all saved messages have
been processed.
Signed-off-by: Alexander Aring <[email protected]>
Signed-off-by: David Teigland <[email protected]>1 parent cc396e2 commit c288745
File tree
5 files changed
+30
-41
lines changed- fs/dlm
5 files changed
+30
-41
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
655 | 655 | | |
656 | 656 | | |
657 | 657 | | |
658 | | - | |
659 | | - | |
660 | | - | |
| 658 | + | |
661 | 659 | | |
662 | 660 | | |
663 | 661 | | |
| |||
717 | 715 | | |
718 | 716 | | |
719 | 717 | | |
| 718 | + | |
720 | 719 | | |
721 | 720 | | |
722 | 721 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4752 | 4752 | | |
4753 | 4753 | | |
4754 | 4754 | | |
4755 | | - | |
| 4755 | + | |
| 4756 | + | |
| 4757 | + | |
4756 | 4758 | | |
4757 | 4759 | | |
4758 | 4760 | | |
4759 | 4761 | | |
| 4762 | + | |
4760 | 4763 | | |
4761 | 4764 | | |
4762 | 4765 | | |
4763 | 4766 | | |
4764 | 4767 | | |
| 4768 | + | |
| 4769 | + | |
| 4770 | + | |
| 4771 | + | |
| 4772 | + | |
| 4773 | + | |
| 4774 | + | |
| 4775 | + | |
4765 | 4776 | | |
| 4777 | + | |
4766 | 4778 | | |
4767 | | - | |
4768 | 4779 | | |
| 4780 | + | |
4769 | 4781 | | |
4770 | 4782 | | |
4771 | 4783 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
554 | 554 | | |
555 | 555 | | |
556 | 556 | | |
557 | | - | |
558 | | - | |
559 | | - | |
| 557 | + | |
560 | 558 | | |
561 | 559 | | |
562 | 560 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
642 | 642 | | |
643 | 643 | | |
644 | 644 | | |
| 645 | + | |
| 646 | + | |
| 647 | + | |
| 648 | + | |
| 649 | + | |
645 | 650 | | |
646 | 651 | | |
647 | 652 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
51 | | - | |
52 | | - | |
53 | 51 | | |
54 | | - | |
55 | 52 | | |
56 | 53 | | |
57 | 54 | | |
| |||
71 | 68 | | |
72 | 69 | | |
73 | 70 | | |
74 | | - | |
75 | | - | |
| 71 | + | |
76 | 72 | | |
77 | 73 | | |
78 | | - | |
| 74 | + | |
79 | 75 | | |
80 | 76 | | |
81 | 77 | | |
82 | | - | |
83 | | - | |
| 78 | + | |
84 | 79 | | |
85 | 80 | | |
86 | 81 | | |
| |||
93 | 88 | | |
94 | 89 | | |
95 | 90 | | |
96 | | - | |
97 | | - | |
98 | 91 | | |
99 | | - | |
100 | | - | |
101 | 92 | | |
102 | 93 | | |
103 | 94 | | |
104 | 95 | | |
105 | | - | |
106 | 96 | | |
107 | 97 | | |
108 | 98 | | |
| 99 | + | |
109 | 100 | | |
| 101 | + | |
110 | 102 | | |
| 103 | + | |
111 | 104 | | |
112 | 105 | | |
113 | 106 | | |
114 | 107 | | |
115 | | - | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
126 | | - | |
127 | | - | |
128 | | - | |
129 | | - | |
130 | | - | |
131 | 108 | | |
132 | 109 | | |
133 | 110 | | |
| |||
158 | 135 | | |
159 | 136 | | |
160 | 137 | | |
161 | | - | |
| 138 | + | |
162 | 139 | | |
163 | 140 | | |
164 | 141 | | |
165 | 142 | | |
166 | 143 | | |
167 | | - | |
168 | | - | |
169 | 144 | | |
170 | 145 | | |
171 | 146 | | |
172 | | - | |
| 147 | + | |
173 | 148 | | |
174 | 149 | | |
0 commit comments