Commit 473619a
[viostor] Fix for clobbered SRB Extension IDs
Refactors SRB Extension ID assignment:
1. Moves assignment from VirtIoStartIo() in virtio_stor.c to virtio_stor_hw_helper.c:
- RhelDoFlush()
- RhelDoReadWrite()
- RhelDoUnMap()
- RhelGetSerialNumber()
2. Moves ULONG_PTR from _ADAPTER_EXTENSION stuct to _REQUEST_LIST struct
3. Renames ULONG_PTR from last_srb_id to next_id
4. Refactors element assignment to be under spinlock
5. Moves ULONG_PTR id towards top of _SRB_EXTENSION struct to resolve memory alignment issue.
The refactor solves the problem because the assignment now occurs under spinlock.
Resolves #1466
Reported by: @iops-hunter
Signed-off-by: benyamin-codez <115509179+benyamin-codez@users.noreply.github.com>1 parent cade4cb commit 473619a
3 files changed
Lines changed: 60 additions & 16 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
259 | 259 | | |
260 | 260 | | |
261 | 261 | | |
262 | | - | |
263 | 262 | | |
264 | 263 | | |
265 | 264 | | |
| |||
895 | 894 | | |
896 | 895 | | |
897 | 896 | | |
898 | | - | |
899 | 897 | | |
900 | 898 | | |
901 | 899 | | |
902 | | - | |
903 | | - | |
904 | | - | |
905 | | - | |
906 | | - | |
907 | | - | |
908 | | - | |
909 | 900 | | |
910 | 901 | | |
911 | 902 | | |
| |||
2136 | 2127 | | |
2137 | 2128 | | |
2138 | 2129 | | |
| 2130 | + | |
2139 | 2131 | | |
2140 | 2132 | | |
2141 | 2133 | | |
| |||
2144 | 2136 | | |
2145 | 2137 | | |
2146 | 2138 | | |
2147 | | - | |
2148 | 2139 | | |
| 2140 | + | |
2149 | 2141 | | |
2150 | 2142 | | |
2151 | 2143 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
204 | 204 | | |
205 | 205 | | |
206 | 206 | | |
| 207 | + | |
207 | 208 | | |
208 | 209 | | |
209 | 210 | | |
| |||
256 | 257 | | |
257 | 258 | | |
258 | 259 | | |
259 | | - | |
260 | 260 | | |
261 | 261 | | |
262 | 262 | | |
| |||
274 | 274 | | |
275 | 275 | | |
276 | 276 | | |
| 277 | + | |
277 | 278 | | |
278 | 279 | | |
279 | 280 | | |
280 | 281 | | |
281 | | - | |
282 | 282 | | |
283 | 283 | | |
284 | 284 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
127 | 127 | | |
128 | 128 | | |
129 | 129 | | |
130 | | - | |
131 | 130 | | |
132 | 131 | | |
133 | 132 | | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
134 | 149 | | |
| 150 | + | |
135 | 151 | | |
136 | 152 | | |
137 | 153 | | |
| |||
216 | 232 | | |
217 | 233 | | |
218 | 234 | | |
219 | | - | |
220 | 235 | | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
221 | 249 | | |
222 | 250 | | |
223 | 251 | | |
| |||
369 | 397 | | |
370 | 398 | | |
371 | 399 | | |
372 | | - | |
373 | 400 | | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
374 | 414 | | |
375 | 415 | | |
376 | 416 | | |
| |||
463 | 503 | | |
464 | 504 | | |
465 | 505 | | |
466 | | - | |
467 | 506 | | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
468 | 520 | | |
469 | 521 | | |
470 | 522 | | |
| |||
0 commit comments