In Linux 2.6 before 2.6.23, the TRACE_IRQS_ON function in iret_exc calls a C function without ensuring that the segments are set properly. The kernels %fs needs to be restored before the call in TRACE_IRQS_ON and before enabling interrupts, so that current references work. Without this, current used in the window between iret_exc and the middle of error_code where %fs is reset, would crash.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Linux_kernel | Linux | 2.6.0 (including) | 2.6.23 (excluding) |