Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bcbbc3a5 authored by qctecmdr's avatar qctecmdr Committed by Gerrit - the friendly Code Review server
Browse files

Merge "devfreq: delete l2wb feature pmu events during governor stop"

parents c9d2eaf4 25253a27
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -657,8 +657,13 @@ static void stop_hwmon(struct memlat_hwmon *hw)
		unsigned int idx = cpu - cpumask_first(&mon->cpus);
		struct dev_stats *devstats = to_devstats(mon, cpu);

		if (mon->miss_ev)
		if (mon->miss_ev) {
			delete_event(&mon->miss_ev[idx]);
			if (mon->wb_ev)
				delete_event(&mon->wb_ev[idx]);
			if (mon->access_ev)
				delete_event(&mon->access_ev[idx]);
		}
		devstats->inst_count = 0;
		devstats->mem_count = 0;
		devstats->freq = 0;
+5 −0
Original line number Diff line number Diff line
@@ -632,6 +632,8 @@ static void save_cpugrp_pmu_events(struct memlat_cpu_grp *cpu_grp, u8 cpu)
				!cpus_data->common_evs[i])
			continue;

		perf_event_read_local(cpus_data->common_evs[i],
				&ev_count, NULL, NULL);
		ev_count = local64_read(&cpus_data->common_evs[i]->hw.prev_count);
		store_event_val(ev_count, hw_id, cpu);
	}
@@ -651,6 +653,9 @@ static void save_mon_pmu_events(struct memlat_mon *mon, u8 cpu)
		if (hw_id == INVALID_PMU_HW_IDX ||
				!ev_data->mon_evs[i])
			continue;

		perf_event_read_local(ev_data->mon_evs[i],
				&ev_count, NULL, NULL);
		ev_count = local64_read(&ev_data->mon_evs[i]->hw.prev_count);
		store_event_val(ev_count, hw_id, cpu);
	}