Commit 4368898
committed
fs: lockless mntns lookup for nsfs
We already made the rbtree lookup lockless for the simple lookup case.
However, walking the list of mount namespaces via nsfs still happens
with taking the read lock blocking concurrent additions of new mount
namespaces pointlessly. Plus, such additions are rare anyway so allow
lockless lookup of the previous and next mount namespace by keeping a
separate list. This also allows to make some things simpler in the code.
Link: https://lore.kernel.org/r/[email protected]
Reviewed-by: Jeff Layton <[email protected]>
Suggested-by: Peter Zijlstra <[email protected]>
Signed-off-by: Christian Brauner <[email protected]>1 parent 67d676b commit 4368898
3 files changed
+34
-26
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
| |||
160 | 161 | | |
161 | 162 | | |
162 | 163 | | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
167 | | - | |
168 | | - | |
169 | | - | |
170 | | - | |
171 | | - | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
172 | 167 | | |
173 | 168 | | |
174 | 169 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
82 | 82 | | |
83 | 83 | | |
84 | 84 | | |
| 85 | + | |
85 | 86 | | |
86 | 87 | | |
87 | 88 | | |
| |||
142 | 143 | | |
143 | 144 | | |
144 | 145 | | |
145 | | - | |
| 146 | + | |
146 | 147 | | |
147 | 148 | | |
148 | 149 | | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
149 | 159 | | |
150 | 160 | | |
151 | 161 | | |
| |||
174 | 184 | | |
175 | 185 | | |
176 | 186 | | |
| 187 | + | |
177 | 188 | | |
178 | 189 | | |
179 | 190 | | |
| |||
2086 | 2097 | | |
2087 | 2098 | | |
2088 | 2099 | | |
2089 | | - | |
| 2100 | + | |
2090 | 2101 | | |
2091 | | - | |
| 2102 | + | |
| 2103 | + | |
2092 | 2104 | | |
2093 | | - | |
| 2105 | + | |
2094 | 2106 | | |
2095 | 2107 | | |
2096 | | - | |
| 2108 | + | |
2097 | 2109 | | |
2098 | | - | |
2099 | | - | |
| 2110 | + | |
| 2111 | + | |
2100 | 2112 | | |
2101 | 2113 | | |
2102 | | - | |
2103 | | - | |
| 2114 | + | |
2104 | 2115 | | |
| 2116 | + | |
| 2117 | + | |
| 2118 | + | |
| 2119 | + | |
| 2120 | + | |
2105 | 2121 | | |
2106 | 2122 | | |
2107 | 2123 | | |
2108 | 2124 | | |
2109 | | - | |
2110 | | - | |
2111 | | - | |
2112 | | - | |
| 2125 | + | |
| 2126 | + | |
| 2127 | + | |
2113 | 2128 | | |
2114 | 2129 | | |
2115 | 2130 | | |
| |||
3926 | 3941 | | |
3927 | 3942 | | |
3928 | 3943 | | |
| 3944 | + | |
3929 | 3945 | | |
3930 | 3946 | | |
3931 | 3947 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
274 | 274 | | |
275 | 275 | | |
276 | 276 | | |
277 | | - | |
278 | | - | |
279 | | - | |
280 | | - | |
| 277 | + | |
281 | 278 | | |
282 | 279 | | |
283 | 280 | | |
| |||
0 commit comments