Commit e92dda4
committed
Refine mutex timed lock wakeup condition
Once a task wakes up from a timed mutex lock, its state is already
in TASK_RUNNING instead of TASK_BLOCKED.
To determine whether the wakeup was triggered by the mutex or by a
timeout, check whether the woken task is still present in the mutex
waiter list.
This change removes the incorrect TASK_BLOCKED-based condition check
and replaces it with a waiter list check for timed mutex lock.1 parent 9942fb4 commit e92dda4
1 file changed
+9
-16
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
237 | 237 | | |
238 | 238 | | |
239 | 239 | | |
240 | | - | |
| 240 | + | |
| 241 | + | |
241 | 242 | | |
242 | 243 | | |
243 | 244 | | |
244 | | - | |
245 | | - | |
246 | | - | |
247 | | - | |
248 | | - | |
249 | | - | |
250 | | - | |
251 | | - | |
252 | | - | |
253 | | - | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
254 | 248 | | |
255 | 249 | | |
256 | 250 | | |
| |||
453 | 447 | | |
454 | 448 | | |
455 | 449 | | |
456 | | - | |
| 450 | + | |
| 451 | + | |
457 | 452 | | |
458 | 453 | | |
459 | 454 | | |
460 | | - | |
461 | | - | |
462 | | - | |
463 | | - | |
| 455 | + | |
| 456 | + | |
464 | 457 | | |
465 | 458 | | |
466 | 459 | | |
| |||
0 commit comments