Messages in this thread Patch in this message | | | Subject | [RFC][PATCH] i386: incorrect xtime locking on resume | From | john stultz <> | Date | Mon, 06 Feb 2006 17:43:07 -0800 |
| |
All, Nigel was asking about some suspend2 patches, and while looking at them I noticed what looks to be a bug where jiffies and wall_jiffies are modified without holding the xtime_lock in the resume path.
This patch should fix it, but I wanted to get some review and testing done before I submit it.
thanks -john
Signed-off-by: John Stultz <johnstul@us.ibm.com>
diff --git a/arch/i386/kernel/time.c b/arch/i386/kernel/time.c index a14d594..406c8d8 100644 --- a/arch/i386/kernel/time.c +++ b/arch/i386/kernel/time.c @@ -412,9 +412,9 @@ static int timer_resume(struct sys_devic write_seqlock_irqsave(&xtime_lock, flags); xtime.tv_sec = sec; xtime.tv_nsec = 0; - write_sequnlock_irqrestore(&xtime_lock, flags); jiffies += sleep_length; wall_jiffies += sleep_length; + write_sequnlock_irqrestore(&xtime_lock, flags); if (last_timer->resume) last_timer->resume(); cur_timer = last_timer;
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |