)]}'
{
  "commit": "8e8f250422663106d478f6927beefba289a95b37",
  "tree": "0d2fe45705d946a917908c04f6a23cef106dee70",
  "parents": [
    "74944287e1ab95e091107c9f26ce46bd50e13043"
  ],
  "author": {
    "name": "Adam Langley",
    "email": "agl@google.com",
    "time": "Wed Sep 05 14:09:52 2018 -0700"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Fri Dec 28 18:05:18 2018 +0000"
  },
  "message": "Use thread-local storage for PRNG states if fork-unsafe buffering is enabled.\n\nWe switched from thread-local storage to a mutex-pool in 82639e6f53\nbecause, for highly-threaded processes, the memory used by all the\nstates could be quite large. I had judged that a mutex-pool should be\nfine, but had underestimated the PRNG requirements of some of our jobs.\n\nThis change makes rand.c support using either thread-locals or a\nmutex-pool. Thread-locals are used if fork-unsafe buffering is enabled.\nWhile not strictly related to fork-safety, we already have the\nfork-unsafe control, and it\u0027s already set by jobs that care a lot about\nPRNG performance, so fits quite nicely here.\n\nChange-Id: Iaf1e0171c70d4c8dbe1e42283ea13df5b613cb2d\nReviewed-on: https://boringssl-review.googlesource.com/c/31564\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\nReviewed-by: David Benjamin \u003cdavidben@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "e6b4bb48c822d14056dbb339e7f63733f5a9db29",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/rand/rand.c",
      "new_id": "bff2471e64b89e8bcd59ad80b448f7b0abe9902c",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/rand/rand.c"
    },
    {
      "type": "modify",
      "old_id": "52799e899db85bff0805b7ba3da9ba1914b65f8e",
      "old_mode": 33188,
      "old_path": "crypto/internal.h",
      "new_id": "3d7b5c17c16f909bc23242ab6f5b44db62a7c9ac",
      "new_mode": 33188,
      "new_path": "crypto/internal.h"
    },
    {
      "type": "modify",
      "old_id": "0f1ececc89789d43644b8036c807677694658b86",
      "old_mode": 33188,
      "old_path": "crypto/rand_extra/forkunsafe.c",
      "new_id": "27921f02737b4f0e0abe649a0e9c52a54e5780b5",
      "new_mode": 33188,
      "new_path": "crypto/rand_extra/forkunsafe.c"
    },
    {
      "type": "modify",
      "old_id": "5d02e12b331ac9f3abf57161d7060e59ffc4e4cc",
      "old_mode": 33188,
      "old_path": "include/openssl/rand.h",
      "new_id": "c6527b3f4a926c42b5beea28c08f9715ff3395d2",
      "new_mode": 33188,
      "new_path": "include/openssl/rand.h"
    }
  ]
}
