commit | f3cff25f05f2ac29b2ee355e611b0657482f6f1d | [log] [tgz] |
---|---|---|
author | Anatol Pomozov <anatol.pomozov@gmail.com> | Sun Sep 22 12:43:47 2013 -0600 |
committer | Jens Axboe <axboe@kernel.dk> | Sun Sep 22 12:43:47 2013 -0600 |
tree | 8a06c59f0970a8bd4be2939792fc88ffddc39e62 | |
parent | 75afb352991ff1cd3cf5955bfe611de6d83a0c87 [diff] |
cfq: explicitly use 64bit divide operation for 64bit arguments 'samples' is 64bit operant, but do_div() second parameter is 32. do_div silently truncates high 32 bits and calculated result is invalid. In case if low 32bit of 'samples' are zeros then do_div() produces kernel crash. Signed-off-by: Anatol Pomozov <anatol.pomozov@gmail.com> Acked-by: Tejun Heo <tj@kernel.org> Signed-off-by: Jens Axboe <axboe@kernel.dk>