Skip to content

Commit

Permalink
thermal: intel: hfi: Shorten the thermal netlink event delay to 100ms
Browse files Browse the repository at this point in the history
The delay between an HFI interrupt and its corresponding thermal netlink
event has so far been hard-coded to CONFIG_HZ jiffies (1 second). This
delay is too long for hardware that generates updates every tens of
milliseconds.

The HFI driver uses a delayed workqueue to send thermal netlink events. No
subsequent events will be sent if there is pending work.

As a result, much of the information of consecutive hardware updates will
be lost if the workqueue delay is too long. User space entities may act on
obsolete data. If the delay is too short, multiple events may overwhelm
listeners.

Set the delay to 100ms to strike a balance between too many and too few
events. Use milliseconds instead of jiffies to improve readability.

Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
Acked-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
  • Loading branch information
Ricardo Neri authored and Rafael J. Wysocki committed May 8, 2024
1 parent 564a88e commit ba1a587
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions drivers/thermal/intel/intel_hfi.c
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ static struct hfi_features hfi_features;
static DEFINE_MUTEX(hfi_instance_lock);

static struct workqueue_struct *hfi_updates_wq;
#define HFI_UPDATE_DELAY HZ
#define HFI_UPDATE_DELAY_MS 100
#define HFI_MAX_THERM_NOTIFY_COUNT 16

static void get_hfi_caps(struct hfi_instance *hfi_instance,
Expand Down Expand Up @@ -322,7 +322,7 @@ void intel_hfi_process_event(__u64 pkg_therm_status_msr_val)
raw_spin_unlock(&hfi_instance->event_lock);

queue_delayed_work(hfi_updates_wq, &hfi_instance->update_work,
HFI_UPDATE_DELAY);
msecs_to_jiffies(HFI_UPDATE_DELAY_MS));
}

static void init_hfi_cpu_index(struct hfi_cpu_info *info)
Expand Down

0 comments on commit ba1a587

Please sign in to comment.