Function report |
Source Code:arch\x86\kernel\cpu\mce\therm_throt.c |
Create Date:2022-07-28 08:04:15 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:herm_throt_process - Process thermal throttling event from interrupt*@curr: Whether the condition is current or not (boolean), since the* thermal interrupt normally gets called both when the thermal* event begins and once the event has ended
Proto:static void therm_throt_process(bool new_event, int event, int level)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| bool | new_event | |
| int | event | |
| int | level |
| 315 | this_cpu = smp_processor_id() |
| 318 | pstate = per_cpu(thermal_state, this_cpu) |
| 320 | now = get_jiffies_64() |
| 321 | If level == CORE_LEVEL Then |
| 322 | If event == THERMAL_THROTTLING_EVENT Then state = core_throttle |
| 324 | Else if event == POWER_LIMIT_EVENT Then state = core_power_limit |
| 326 | Else Return |
| 328 | Else if level == PACKAGE_LEVEL Then |
| 329 | If event == THERMAL_THROTTLING_EVENT Then state = package_throttle |
| 331 | Else if event == POWER_LIMIT_EVENT Then state = package_power_limit |
| 333 | Else Return |
| 335 | Else Return |
| 344 | If event != THERMAL_THROTTLING_EVENT Then Return |
| 347 | If new_event && Not last_interrupt_time Then |
| 351 | get_therm_status(level, & hot, & temp) |
| 357 | If temp > 10 Then Return |
| 360 | baseline_temp = temp |
| 361 | last_interrupt_time = now |
| 363 | Else if old_event && last_interrupt_time Then |
| 367 | If throttle_time > max_time_ms Then max_time_ms = throttle_time |
| 369 | total_time_ms += throttle_time |
| 370 | last_interrupt_time = 0 |
| Name | Describe |
|---|---|
| intel_thermal_interrupt | Thermal transition interrupt handler |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |