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

Commit a2ee4e79 authored by Pavankumar Kondeti's avatar Pavankumar Kondeti Committed by pavankumar kondeti
Browse files

trace/sched: Fix compilation for 32 bit systems



do_div() expects the dividend to be a 64 bit type. We are passing
an unsigned long to do_div() from sched_load_avg_task and
sched_load_avg_cpu trace points. This breaks compilation on
a 32 bit system.

Change-Id: I9eb07dba1e62b68d5fc8d12e3f478b22c4ba5e0d
Signed-off-by: default avatarPavankumar Kondeti <pkondeti@codeaurora.org>
parent 21bd85cd
Loading
Loading
Loading
Loading
+8 −9
Original line number Diff line number Diff line
@@ -636,7 +636,7 @@ TRACE_EVENT(sched_load_avg_task,
		__field( unsigned long,	load_avg		)
		__field( unsigned long,	util_avg		)
		__field( unsigned long,	util_avg_pelt		)
		__field( unsigned long,	util_avg_walt		)
		__field( u32,		util_avg_walt		)
		__field( u64,		load_sum		)
		__field( u32,		util_sum		)
		__field( u32,		period_contrib		)
@@ -654,14 +654,14 @@ TRACE_EVENT(sched_load_avg_task,
		__entry->util_avg_pelt  = avg->util_avg;
		__entry->util_avg_walt  = 0;
#ifdef CONFIG_SCHED_WALT
		__entry->util_avg_walt = (((unsigned long)((struct ravg*)_ravg)->demand) << SCHED_CAPACITY_SHIFT);
		do_div(__entry->util_avg_walt, walt_ravg_window);
		__entry->util_avg_walt = ((struct ravg*)_ravg)->demand /
					 (walt_ravg_window >> SCHED_CAPACITY_SHIFT);
		if (!walt_disabled && sysctl_sched_use_walt_task_util)
			__entry->util_avg = __entry->util_avg_walt;
#endif
	),
	TP_printk("comm=%s pid=%d cpu=%d load_avg=%lu util_avg=%lu "
			"util_avg_pelt=%lu util_avg_walt=%lu load_sum=%llu"
			"util_avg_pelt=%lu util_avg_walt=%u load_sum=%llu"
		  " util_sum=%u period_contrib=%u",
		  __entry->comm,
		  __entry->pid,
@@ -689,7 +689,7 @@ TRACE_EVENT(sched_load_avg_cpu,
		__field( unsigned long,	load_avg		)
		__field( unsigned long,	util_avg		)
		__field( unsigned long,	util_avg_pelt		)
		__field( unsigned long,	util_avg_walt		)
		__field( u32,		util_avg_walt		)
	),

	TP_fast_assign(
@@ -699,16 +699,15 @@ TRACE_EVENT(sched_load_avg_cpu,
		__entry->util_avg_pelt	= cfs_rq->avg.util_avg;
		__entry->util_avg_walt	= 0;
#ifdef CONFIG_SCHED_WALT
		__entry->util_avg_walt	=
			cpu_rq(cpu)->prev_runnable_sum << SCHED_CAPACITY_SHIFT;
		do_div(__entry->util_avg_walt, walt_ravg_window);
		__entry->util_avg_walt = div64_ul(cpu_rq(cpu)->prev_runnable_sum,
					 walt_ravg_window >> SCHED_CAPACITY_SHIFT);
		if (!walt_disabled && sysctl_sched_use_walt_cpu_util)
			__entry->util_avg		= __entry->util_avg_walt;
#endif
	),

	TP_printk("cpu=%d load_avg=%lu util_avg=%lu "
			  "util_avg_pelt=%lu util_avg_walt=%lu",
			  "util_avg_pelt=%lu util_avg_walt=%u",
		  __entry->cpu, __entry->load_avg, __entry->util_avg,
		  __entry->util_avg_pelt, __entry->util_avg_walt)
);