On 06/04/2014 01:33 PM, Viresh Kumar wrote:
On 2 June 2014 23:49, Viresh Kumar viresh.kumar@linaro.org wrote:
diff --git a/kernel/time/clockevents.c b/kernel/time/clockevents.c index ad362c2..c9bef22 100644 --- a/kernel/time/clockevents.c +++ b/kernel/time/clockevents.c @@ -105,7 +105,12 @@ void clockevents_set_mode(struct clock_event_device *dev, enum clock_event_mode mode) { if (dev->mode != mode) {
dev->set_mode(mode, dev);
/* WARN_ON? Currently available modes shouldn't fail */
if (dev->set_dev_mode)
WARN_ON_ONCE(dev->set_dev_mode(mode, dev));
else
dev->set_mode(mode, dev);
I was looking to do this modification here to add some debugging prints as well. Please see if it makes sense:
diff --git a/kernel/time/clockevents.c b/kernel/time/clockevents.c index c9bef22..5b85ac8 100644 --- a/kernel/time/clockevents.c +++ b/kernel/time/clockevents.c @@ -105,11 +105,14 @@ void clockevents_set_mode(struct clock_event_device *dev, enum clock_event_mode mode) { if (dev->mode != mode) {
/* WARN_ON? Currently available modes shouldn't fail */
if (dev->set_dev_mode)
WARN_ON_ONCE(dev->set_dev_mode(mode, dev));
else
if (dev->set_dev_mode) {
int ret = dev->set_dev_mode(mode, dev);
/* Currently available modes shouldn't fail */
WARN_ONCE(ret, "Requested mode: %d, error:
%d\n", mode, ret);
} else { dev->set_mode(mode, dev);
} dev->mode = mode;
Looks good to me.
Regards Preeti U Murthy