aboutsummaryrefslogtreecommitdiffstats
path: root/packages/linux/linux-omap-pm/timer-suppression.patch
blob: 04362c96e3e03c016e8dc5ab4ed490a2ae80a2e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index b854a89..26f5569 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -253,6 +253,16 @@ void tick_nohz_stop_sched_tick(void)
 
 	/* Schedule the tick, if we are at least one jiffie off */
 	if ((long)delta_jiffies >= 1) {
+		/*
+		 * calculate the expiry time for the next timer wheel
+		 * timer
+		 */
+		expires = ktime_add_ns(last_update, tick_period.tv64 *
+					delta_jiffies);
+
+		/* Skip reprogram of event if its not changed */
+		if(ts->tick_stopped && ktime_equal(expires, dev->next_event))
+		goto out2;
 
 		if (delta_jiffies > 1)
 			cpu_set(cpu, nohz_cpu_mask);
@@ -304,12 +314,7 @@ void tick_nohz_stop_sched_tick(void)
 			goto out;
 		}
 
-		/*
-		 * calculate the expiry time for the next timer wheel
-		 * timer
-		 */
-		expires = ktime_add_ns(last_update, tick_period.tv64 *
-				       delta_jiffies);
+		/* Mark expiries */
 		ts->idle_expires = expires;
 
 		if (ts->nohz_mode == NOHZ_MODE_HIGHRES) {
@@ -328,6 +333,7 @@ void tick_nohz_stop_sched_tick(void)
 		tick_do_update_jiffies64(ktime_get());
 		cpu_clear(cpu, nohz_cpu_mask);
 	}
+out2:	
 	raise_softirq_irqoff(TIMER_SOFTIRQ);
 out:
 	ts->next_jiffies = next_jiffies;
ansa/rocko'>jansa/rocko OpenEmbedded Core user contribution treesGrokmirror user
summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/mesa/mesa_10.5.8.bb
blob: 7cfef0c6a17cec46293d9b0017eb5407236755df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
require ${BPN}.inc

SRC_URI = "ftp://ftp.freedesktop.org/pub/mesa/${PV}/mesa-${PV}.tar.xz"

SRC_URI[md5sum] = "5332a3576c5e3a0c3947ee6668dd4157"
SRC_URI[sha256sum] = "2866b855c5299a4aed066338c77ff6467c389b2c30ada7647be8758663da2b54"

#because we cannot rely on the fact that all apps will use pkgconfig,
#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER
do_install_append() {
    if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then
        sed -i -e 's/^#if defined(MESA_EGL_NO_X11_HEADERS)/#if ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h
    fi
}