231 | | = Implementation = |
232 | | |
233 | | = = Testing == |
| 231 | = ISR Locks = |
| 232 | |
| 233 | == Status == |
| 234 | |
| 235 | |
| 236 | On single processor configurations disabling of interrupts ensures mutual |
| 237 | exclusion. This is no longer true on SMP since other processors continue to |
| 238 | execute freely. On SMP the disabling of interrupts must be combined with an |
| 239 | SMP lock. The ISR locks degrade to simple interrupt disable/enable sequences |
| 240 | on single processor configurations. On SMP configurations they use an SMP lock |
| 241 | to ensure mutual exclusion throughout the system. |
| 242 | = = Future Directions ==== |
| 243 | |
| 244 | |
| 245 | * See [wiki:#SMP_Locks #SMP Locks]. |
| 246 | * Ensure via a RTEMS assertion that normal interrupt disable/sequences are only used intentional outside of the Giant lock critical sections. Review usage of ISR disable/enable sequences of the complete code base. |
| 247 | = = Implementation == |
| 248 | |
| 249 | |
| 250 | == Testing == |