]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd: fix sched_time not actually randomized 9126/head
authorxie xingguo <xie.xingguo@zte.com.cn>
Sat, 14 May 2016 03:28:04 +0000 (11:28 +0800)
committerxie xingguo <xie.xingguo@zte.com.cn>
Sun, 15 May 2016 23:02:50 +0000 (07:02 +0800)
commitd3b7767a64af0cd57d17b888e4ec3bdae6fdab87
treea3cf911f199493c7acb3bebff1229a859457e68b
parentcd729526e9742ed152aa125cd4e4fe0cb8366b61
osd: fix sched_time not actually randomized

The test program:

main()
{
  for (int i = 0; i < 1000; i++) {
    double before = rand() / RAND_MAX;
    double after = rand() / (double)RAND_MAX;
    cout << "before: " << before << " after: " << after << endl;
  }
}

And the output(partial and with "-std=c++11" option):

before: 0 after: 0.394383
before: 0 after: 0.79844
before: 0 after: 0.197551
before: 0 after: 0.76823
before: 0 after: 0.55397
before: 0 after: 0.628871
before: 0 after: 0.513401
before: 0 after: 0.916195
before: 0 after: 0.717297
before: 0 after: 0.606969
before: 0 after: 0.242887
before: 0 after: 0.804177
before: 0 after: 0.400944
before: 0 after: 0.108809
before: 0 after: 0.218257
before: 0 after: 0.839112
before: 0 after: 0.296032
before: 0 after: 0.524287

Fixes: http://tracker.ceph.com/issues/15890
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
src/osd/OSD.cc