)]}'
{
  "log": [
    {
      "commit": "e104a2edf3c459b2e79e86d4de388fb7a1efe198",
      "tree": "4f50d2627e6f47f6908561114d95b32a168691bc",
      "parents": [
        "5ac45a2add41fd7c1640815accf09a29bd14aac6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 06 15:55:36 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 06 16:37:00 2016 -0700"
      },
      "message": "Generalize the clone function slightly.\n\n* Allow clone where both the child function and stack are null. It\u0027s\nobviously wrong to ask to call a function without a stack, but it\u0027s not\nnecessarily wrong to supply no stack if you\u0027re also not supplying a\nfunction.\n\n* Reimplement fork in terms of the clone function, rather than using the\nclone system call directly.\n\nThis is intended as a step towards enabling use of pid namespaces.\n\nChange-Id: I03c89bd1dc540d8b4ed1c8fdf6644290744b9e91\n"
    },
    {
      "commit": "fb23fa30465e14b5dbf0e9de2a34c1cbe113e971",
      "tree": "9b0d9883c85ff042a3a685a20f217debcfeaf089",
      "parents": [
        "e725dc164015d873b64639f0fee9ba5c30175f4c"
      ],
      "author": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Wed Mar 23 17:15:02 2016 -0700"
      },
      "committer": {
        "name": "Greg Hackmann",
        "email": "ghackmann@google.com",
        "time": "Thu Mar 24 16:37:20 2016 -0700"
      },
      "message": "clone: check for NULL child stack\n\nThe clone syscall accepts NULL child stacks, interpreting this to mean\nthe child gets a copy of the parent\u0027s stack with copy-on-write\nsemantics.  However clone(2) is explicitly documented to treat this an\nan error.\n\n\"Fortunately\" every architecture\u0027s __bionic_clone implementation pushes\nsomething onto the child stack before making the clone syscall.  So we\nknow fixing this won\u0027t break legacy apps, because any app that tried\nusing a NULL child stack would have died with SIGSEGV.\n\nThis change fixes the LTP clone04 testcase.\n\nChange-Id: I663b34f34bc8dad2aa405c46e4eed4418cccca0d\nSigned-off-by: Greg Hackmann \u003cghackmann@google.com\u003e\n"
    },
    {
      "commit": "063525c61d24776094d76971f33920e2a2079530",
      "tree": "de279e25b05c43dbb06bc3ceb49f23bed3874377",
      "parents": [
        "a26dd781fe675cf94c62183da27622eb83ff6fa7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 11:19:57 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 11:19:57 2014 -0700"
      },
      "message": "Consistently use #if defined(__BIONIC__) in tests.\n\nI\u0027ve also switched some tests to be positive rather than negative,\nbecause !defined is slightly harder to reason about and there are\nonly two cases: bionic and glibc.\n\nChange-Id: I8d3ac40420ca5aead3e88c69cf293f267273c8ef\n"
    },
    {
      "commit": "954cf0d4e2669f91194b45f484152e47efa4f6c7",
      "tree": "a367f6590dcf1723983c7396a63bb6174b94b8e9",
      "parents": [
        "170daa042cb0ef3e5d7839f79d052a683b3c670f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 08 19:00:23 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 08 19:00:23 2014 -0700"
      },
      "message": "Hide the __bionic_clone and __bionic_clone_entry implementation details.\n\nclone(2) is the public symbol.\n\nAlso switch a test from __bionic_clone to clone; testing public API\nmeans the test now works on glibc too.\n\nChange-Id: If59def26a00c3afadb8a6cf9442094c35a59ffde\n"
    },
    {
      "commit": "2d36750c3ad8fd91cf52cb0ed8f38ecfd88b0f13",
      "tree": "81925d42b18d74111e3a544ce1646948dd6b596b",
      "parents": [
        "77473e408504a7e298816b4071cd6902065b03d8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 30 10:45:35 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 30 10:45:35 2014 -0700"
      },
      "message": "Fix the CPU_*_S tests.\n\nChange-Id: Id67c48b9c12a20b01309490670438bfcd9163465\n"
    },
    {
      "commit": "b743790ccabd9b0b93355ff693066478d10dae0d",
      "tree": "7594a0cbcc9703fbd5ae9f7dcb48daaad1e2ff69",
      "parents": [
        "eab395e4a88ee8ca7eeb7b6b2d6dfde364afbfcc"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Apr 29 20:25:26 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Apr 30 14:30:15 2014 +0100"
      },
      "message": "Fix cpu_set_t\n\n- extend CPU_SETSIZE for LP64\n- fix CPU_(AND|OR|XOR) macros\n- fix CPU_OP_S macro\n- fix __sched_cpucount\n- tidy up the code\n\nChange-Id: I741afff4d0c473e8a1ee6b4141981dc24467e0d4\n"
    },
    {
      "commit": "13613137bc4266656bffce464e525eb9ae6371f0",
      "tree": "0acda656b21254c1b809b575ab403d4099811b6e",
      "parents": [
        "020bcdaef349b6bd82302a0656fdf9aaff30bdb3"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Oct 28 15:24:04 2013 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Oct 29 14:55:11 2013 -0700"
      },
      "message": "Fix up failing glibc tests.\n\nThere is a known bug running clone with the CLONE_VM flag, so for host\ncreate an empty test.\n\nChange the expected output of the stdio test for a glibc difference.\n\nChange the pause test to use ScopedSignalHandler to setup/restore the SIGALRM\nhandler.\n\nAfter this, running bionic-unit-tests-glibc passes for all tests.\n\nBug: 11389824\n\nChange-Id: Ib304eae4164115835a54991dfdca5821ecc3db5e\n"
    },
    {
      "commit": "53bfdae4ffdbd43d0c019d1a35af1f8477a272c9",
      "tree": "f6b7395802ff60e74d4da96d0f66418dba31e22a",
      "parents": [
        "a5bab412e0bcb4f9e449d594330819c321cf18ad"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 18 19:39:09 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 18 19:39:09 2013 -0700"
      },
      "message": "Fix the x86_64 clone implementation.\n\nChange-Id: Ia75f46dcb4d3222049e9a6a6fabc2b17223b47f7\n"
    }
  ]
}
