hrtimer: make sure PINNED flag is cleared after removing hrtimer
Change-Id: I1a3211bc0d5d310c7fa7b92dc44ec6c4722dd7b9 Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> [forward port to 3.18] Signed-off-by: Santosh Shukla <santosh.shukla@linaro.org> Git-commit: d6c894e515b4cd93c3a08e7c60cce0aa5118c656 Git-repo: git://git.linaro.org/people/mike.holmes/santosh.shukla/lng-isol.git Signed-off-by: Olav Haugan <ohaugan@codeaurora.org> Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
This commit is contained in:
parent
a13bd9b940
commit
55efbbcc5f
@ -1037,6 +1037,7 @@ remove_hrtimer(struct hrtimer *timer, struct hrtimer_clock_base *base, bool rest
|
||||
state = HRTIMER_STATE_INACTIVE;
|
||||
|
||||
__remove_hrtimer(timer, base, state, reprogram);
|
||||
timer->state &= ~HRTIMER_STATE_PINNED;
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
@ -1104,7 +1105,7 @@ static int __hrtimer_start_range_ns(struct hrtimer *timer, ktime_t tim,
|
||||
|
||||
/* Update pinned state */
|
||||
timer->state &= ~HRTIMER_STATE_PINNED;
|
||||
timer->state |= !!(mode & HRTIMER_MODE_PINNED) << HRTIMER_PINNED_SHIFT;
|
||||
timer->state |= (!!(mode & HRTIMER_MODE_PINNED)) << HRTIMER_PINNED_SHIFT;
|
||||
|
||||
return enqueue_hrtimer(timer, new_base, mode);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user