[lkml]   [2008]   [Jun]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Bug in arch/i386/lib/delay.c file, delay_loop function

    > when trying to understand how Bogomips are implemented I have found
    > bug in arch/i386/lib/delay.c file, delay_loop function

    > The function fails for loops > 2^31+1. It because SF is set when dec
    > returns numbers > 2^31
    > The fix is to use jnz instruction instead of jns (and add one decl
    > instruction to the end to have exactly the same number of loops as in
    > original version):

    It is a long time since I have hacked that file, but you should definitely
    make sure that the function is never called with a zero argument. In such
    case, the original version made just a single pass, but your version
    makes 2^32 of them.

    Have a nice fortnight
    Martin `MJ' Mares <>
    Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth
    Homo homini lupus, frater fratri lupior, bohemus bohemo lupissimus.

     \ /
      Last update: 2008-06-01 19:39    [W:0.029 / U:4.336 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site