On Thu, 5 Mar 2009 23:20:51 +0100 Frans Pop <elendil@xxxxxxxxx> wrote: > 17180299.993240! Krnl GPRS: 00000000 000007d0 7fffffff fffff830 > 17180299.993503! 00000000 ffffffff 7fe34d58 0fc2e4f0 > 17180299.993748! 00000000 00002ee0 00000000 0fc2e4f0 > 17180299.994000! 0fc2e8dc 8007386e 0f281ec8 0f281e98 > 17180299.995002! Krnl Code: 800738aa: a71807d0 lhi %r1,2000 > 17180299.995366! 800738ae: 8c200001 srdl %r2,1 > 17180299.995687! 800738b2: 1d21 dr %r2,%r1 > 17180299.996066! >800738b4: 5810d10e l %r1,270(%r13) > 17180299.996392! 800738b8: 1823 lr %r2,%r3 > 17180299.996759! 800738ba: 4130f060 la %r3,96(%r15) > 17180299.997083! 800738be: 0de1 basr %r14,%r1 > 17180299.997479! 800738c0: 5800f060 l %r0,96(%r15) The divident failed because the divident went negative. The srdl shifts the divident by 1 to be able to use the instruction for a signed division (dr) for an unsigned division. So the real divident is -4000 abd the divisor is 1000. The result won't fit into a 32 bit register. So we need to find out why the divident went negative. -- blue skies, Martin. "Reality continues to ruin my life." - Calvin. -- To unsubscribe from this list: send the line "unsubscribe linux-s390" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html