Force tick interrupt and get rid of softirq magic 91/2891/4
authorYunhong Jiang <yunhong.jiang@linux.intel.com>
Tue, 27 Oct 2015 04:54:35 +0000 (00:54 -0400)
committerJiang, Yunhong <yunhong.jiang@intel.com>
Fri, 20 Nov 2015 21:25:14 +0000 (21:25 +0000)
commit6d8b23062207c761e4606d1eae0e43cf36141a44
treec2c06ce9b94ad950ecade75cda07c5b295ce9923
parent6744cd0d1d2faad4e7b345563b91888d32db221e
Force tick interrupt and get rid of softirq magic

This is a backporting from upstream linux, please refer to
http://marc.info/?t=142904577100001&r=1&w=2 for more information, the
corresponding kernel commit is 0ff53d09642204c64842 (tick: sched: Force
tick interrupt and get rid of softirq magic).

The purpose of this patch is, if a tick_sched interrupt is missed, don't
try to raise softirq, instead, we can simply trigger the timer interrupt.
The reason is, softirq requires context switch and has much higher overhead
than interrupt.

Upstream status: backport 0ff53d09642204c64842

Change-Id: I70131fb85189d15972fcaa1a2a2fa190270787f9
Back-port-by: Yunhong Jiang <yunhong.jiang@linux.intel.com>
kernel/kernel/time/hrtimer.c
kernel/kernel/time/tick-sched.c