Messages in this thread | | | Date | Mon, 8 Feb 2010 20:47:34 +0100 | From | Andreas Mohr <> | Subject | Re: clocksource mutex deadlock, cat current_clocksource (2.6.33-rc6/7) |
| |
Hi,
On Mon, Feb 08, 2010 at 11:06:58AM +0100, Thomas Gleixner wrote: > EIP: 0060:[<c1045170>] EFLAGS: 00000082 CPU: 0 > EIP is at timekeeping_forward_now+0x116/0x139 > > I don't see what might make the machine stuck here. Can you decode the > source line with "addr2line -e vmlinux c1045170" please ?
And the winner is: /usr/src/linux-2.6.33-rc7/include/linux/math64.h:91
static __always_inline u32 __iter_div_u64_rem(u64 dividend, u32 divisor, u64 *remainder) { u32 ret = 0;
while (dividend >= divisor) { /* The following asm() prevents the compiler from optimising this loop into a modulo operation. */ asm("" : "+rm"(dividend));
dividend -= divisor; ret++; }
*remainder = dividend;
return ret; }
while ......
Do I see a divisor == 0 here?? ;)
Andreas Mohr
| |