)]}'
{
  "log": [
    {
      "commit": "93e1907ae1794068c1018750603c9206cb700d1b",
      "tree": "f18432661bd418fc6a8a8b42f2a0a5a3fcda57e9",
      "parents": [
        "e4392199af1f867f751f73b129cc71e2ea99aba9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 09 16:35:36 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 09 16:35:36 2014 -0700"
      },
      "message": "Use the glibc name user_fpregs_struct.\n\nInstead of the kernel name user_i387_struct.\n\nBug: 13889008\nChange-Id: Ideec2e1ce36c1faa4b5b2db1999ad2b23757ca4d\n"
    },
    {
      "commit": "c5992a036ba380f56e5be3d2d6b1abb34064b20e",
      "tree": "df24fe107e484a54f10c349aa44689d1521392bf",
      "parents": [
        "a5d83312bdeae2062a45160f54ce86c4b7b164e0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 09 13:27:48 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 09 13:27:48 2014 -0700"
      },
      "message": "Fix mcontext_t for x86-64.\n\nChange-Id: I1ac0e7f44bcdd06a07862993e92c3048a7474a8b\n"
    },
    {
      "commit": "a5d83312bdeae2062a45160f54ce86c4b7b164e0",
      "tree": "7974c6adb612f384fe14b81c864b4dfb664ec05f",
      "parents": [
        "b52a4ab4e281c7adae35b3d7ae8d99b5753b870d",
        "ff64831b0965c16c95c9f81a148f30a6ef3a6c64"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Apr 09 06:06:46 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 09 06:06:48 2014 +0000"
      },
      "message": "Merge \"Use glibc structure for __cmsg_nxthdr.\""
    },
    {
      "commit": "b52a4ab4e281c7adae35b3d7ae8d99b5753b870d",
      "tree": "29c9202d49c1b1458cc99e2ad72527fd7b83084d",
      "parents": [
        "e62355057ca703eeca22d54a8a0f5b69ca58487c",
        "c4936e20a3a8772cc393423037be36091e68acc2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 09 04:13:43 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 09 04:13:43 2014 +0000"
      },
      "message": "Merge \"Flesh out \u003clocale.h\u003e.\""
    },
    {
      "commit": "c4936e20a3a8772cc393423037be36091e68acc2",
      "tree": "17df342ad605fcb25812936a34d68e3f225b387e",
      "parents": [
        "ac70d2e1fe71f98232942237c2b463ea3adbf662"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 08 17:05:05 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 08 19:37:38 2014 -0700"
      },
      "message": "Flesh out \u003clocale.h\u003e.\n\nThis is a trivial implementation that only supports the C/POSIX locale.\n\nChange-Id: Ib11cea4249e1862aca96a8b94d58ea9a418cbe75\n"
    },
    {
      "commit": "9f525644df99cb2f7f81a23ca23840f0a8f82275",
      "tree": "edfe771f84024370aba4988e016534e5c535984e",
      "parents": [
        "ac70d2e1fe71f98232942237c2b463ea3adbf662"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 08 17:14:01 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 08 17:16:13 2014 -0700"
      },
      "message": "Implement _Exit(3).\n\nChange-Id: Ida6ac844cc87d38c9645b197dd8188bb73e27dbe\n"
    },
    {
      "commit": "ff64831b0965c16c95c9f81a148f30a6ef3a6c64",
      "tree": "8dbd07fa5ed8323b98063427eaa8b72a4ac49102",
      "parents": [
        "38687593141ca4a4072210417877590e44a10b0c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Apr 07 20:39:20 2014 +0300"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Apr 09 00:55:24 2014 +0300"
      },
      "message": "Use glibc structure for __cmsg_nxthdr.\n\nBug: 13418328\nChange-Id: I7e656b373e53e80d708325321e48dcedacf5086d\n"
    },
    {
      "commit": "5363a45f2b6d4eeb054710d0886bbadea8a15273",
      "tree": "907bc848885d648d631a41c768ca60b7f69bbcdf",
      "parents": [
        "5acd2d40052c55255a346167e504afb884eeb3af"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 08 14:34:12 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 08 14:34:12 2014 -0700"
      },
      "message": "Clean up localeconv(3).\n\nThe OpenBSD doesn\u0027t support C99, and the extent to which we support\nlocales is trivial, so just do it ourselves.\n\nChange-Id: If0a06e627ecc593f7b8ea3e9389365782e49b00e\n"
    },
    {
      "commit": "48501af98f3cdf0115a469ee8d773cf74c42958d",
      "tree": "b26893fa81d808c0f93bf8fdf966e3210948b8c2",
      "parents": [
        "0b0387c965894e235b72fa965191bf346270135d"
      ],
      "author": {
        "name": "Serban Constantinescu",
        "email": "serban.constantinescu@arm.com",
        "time": "Fri Mar 14 13:16:25 2014 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 08 12:19:23 2014 -0700"
      },
      "message": "AArch64: Fix flock64 for LP64.\n\nOn LP64 systems F_GETLK64, F_SETLK64 and F_SETLKW64 definitions should\nmap onto the F_GETLK, F_SETLK and F_SETLKW definitions, respectively.\nLP64 also doesn\u0027t have a struct flock64.\n\nChange-Id: Ibdfed9645d9e946999acd6efa8b96ea6238ed5bf\nSigned-off-by: Marcus Oakland \u003cmarcus.oakland@arm.com\u003e\nSigned-off-by: Serban Constantinescu \u003cserban.constantinescu@arm.com\u003e\n"
    },
    {
      "commit": "41059d764f347baa28b8da653a88c772daa9b738",
      "tree": "f8c851b6d89e2c96a6b2abbddae691574c278ed3",
      "parents": [
        "b9bb48bf289eec9053c6d7cc77ebbde2b4356c4b",
        "950a58e24d1019eb9d814dbb16f111a6b61e3f23"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Apr 08 01:21:06 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Apr 08 01:21:07 2014 +0000"
      },
      "message": "Merge \"Add stpcpy/stpncpy.\""
    },
    {
      "commit": "950a58e24d1019eb9d814dbb16f111a6b61e3f23",
      "tree": "5a91099e0ce1b9d552e7210fb914ba8d4d5ddb10",
      "parents": [
        "5f149f1bdef31d198c0e84fd8c904204d263e825"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Apr 04 14:38:18 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Apr 07 16:41:53 2014 -0700"
      },
      "message": "Add stpcpy/stpncpy.\n\nAdd tests for the above.\n\nAdd the fortify implementations of __stpcpy_chk and __stpncpy_chk.\n\nModify the strncpy test to cover more cases and use this template for\nstpncpy.\n\nAdd all of the fortify test cases.\n\nBug: 13746695\nChange-Id: I8c0f0d4991a878b8e8734fff12c8b73b07fdd344\n"
    },
    {
      "commit": "efbdb53f84f4e1faf38f3c1a4cb60a83b9885ef4",
      "tree": "ce1cefce8be4e92dec242f1a06672b1dfbf566d7",
      "parents": [
        "5f149f1bdef31d198c0e84fd8c904204d263e825"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 15:17:19 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 15:17:19 2014 -0700"
      },
      "message": "Remove a non-standard turd: strtotimeval.\n\nChange-Id: I1b1e40746cb573e3fb73a5276969b40c5da36d15\n"
    },
    {
      "commit": "5f149f1bdef31d198c0e84fd8c904204d263e825",
      "tree": "52fa540075fdd9c07b18af3b5b99657850340318",
      "parents": [
        "60ba211d2b1b4205063419b0933cba711b1547d6",
        "77e944fd46728075fe632bcb5211da9daf5b7e68"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 21:39:37 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Apr 07 21:39:38 2014 +0000"
      },
      "message": "Merge \"Implement wctomb(3) for ltrace.\""
    },
    {
      "commit": "50249bca00d2c7d237e67d4d276057bb59508804",
      "tree": "e89fde93c296d0279b7708a53ee58065b723d736",
      "parents": [
        "47931f8f796b736bd229b6669efcf428108abc47"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 14:36:59 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 14:36:59 2014 -0700"
      },
      "message": "Fix build: __unused isn\u0027t unused!\n\nChange-Id: I57f2b755d1b2509f9c5504b12a5ff6c50b78b375\n"
    },
    {
      "commit": "77e944fd46728075fe632bcb5211da9daf5b7e68",
      "tree": "078c4ed4dcd4a8d857aa948de76dec223c588e0d",
      "parents": [
        "dc5fcf3620bfc221954b3d42f459bfdcf8f48216"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 04 17:34:51 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 14:29:28 2014 -0700"
      },
      "message": "Implement wctomb(3) for ltrace.\n\nThis is an implementation in the style of the rest: char \u003d\u003d byte.\n\nWe might want to come back and implement UTF-8, but this is enough for ltrace.\n\nBug: 13747066\nChange-Id: Ib2b63609c9014fdef9a8491e067467c4fc5ae3cc\n"
    },
    {
      "commit": "5c7bda5c612746266d8ae0d1a8240c7aee4ad9ae",
      "tree": "9ce227155ce53ee193c208476752bc6d4a53d2d5",
      "parents": [
        "dc5fcf3620bfc221954b3d42f459bfdcf8f48216"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 12:12:00 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 07 12:12:00 2014 -0700"
      },
      "message": "Fix aarch64 struct ucontext.\n\nChange-Id: I6f0959723a753e8c788275709e7245c103ff88d1\n"
    },
    {
      "commit": "caa15bfe2d6c065d2caff48583f18351bd96915f",
      "tree": "8ec51184d133bf596b1c757989a1c71df0d133ec",
      "parents": [
        "804b95e5356a9fbb075c528fb781dd99a3be7277"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Apr 03 13:59:14 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Apr 03 13:59:14 2014 -0700"
      },
      "message": "Define __WORDSIZE like glibc.\n\nRequested by Google Breakpad, but seems to be assumed to be defined\nin various places in the AOSP tree already; iputils, wpa_supplicant,\net cetera.\n\nChange-Id: I1f7833c98e0af4c77e49744c08b8239061c9a571\n"
    },
    {
      "commit": "804b95e5356a9fbb075c528fb781dd99a3be7277",
      "tree": "e180dd6db5e8e1fe56833f361134a15fab18f8c8",
      "parents": [
        "38687593141ca4a4072210417877590e44a10b0c",
        "ea9bf6788144b83cc51c454b2bfe6b980d6e947c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Apr 03 17:05:32 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 03 17:05:32 2014 +0000"
      },
      "message": "Merge \"bionic: Replace iface with opaque netid in resolver.\""
    },
    {
      "commit": "1b0dc40980c259aa0d9a416cd1ccf497e6efe138",
      "tree": "5a30cfb93222ba774b604bbba25c781df40dda78",
      "parents": [
        "f1bfc8781e17fb851de23dce4332c0cb5ccb8749"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 01 17:16:59 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 01 17:16:59 2014 -0700"
      },
      "message": "Remove \u003cmachine/limits.h\u003e.\n\nChange-Id: I7f9e9538517f726d4f08bf1f4b8d57c54d3f1676\n"
    },
    {
      "commit": "ea9bf6788144b83cc51c454b2bfe6b980d6e947c",
      "tree": "eb73d23bcba8dcc1f2d88b76bfd1afa1be2d639b",
      "parents": [
        "bc475bc8d1d202baa48f6c9829fe1cced9122332"
      ],
      "author": {
        "name": "Szymon Jakubczak",
        "email": "szym@google.com",
        "time": "Fri Feb 14 17:07:23 2014 -0500"
      },
      "committer": {
        "name": "Paul Jensen",
        "email": "pauljensen@google.com",
        "time": "Tue Apr 01 16:25:49 2014 -0400"
      },
      "message": "bionic: Replace iface with opaque netid in resolver.\n\nReplace iface cache key with netid.\n\nReplace _mark with netid.\n\nMark sockets used to test IPv4/IPv6 support as well as sockets\nused to determine source address for rfc6724 sort.\n\nRemove pid/uid mappings (functionality moved to system/netd).\n\nDo not create resolv_cache when it does not exist, but rather only\nwhen DNS configuration is supplied.\n\nClean up unused functions.\n\nChange-Id: I9ccfda2902cc0943e87c9bc346ad9a2578accdab\n"
    },
    {
      "commit": "7f3a272ae327c647db4caeaea2a3c7af50bd73b5",
      "tree": "11f13e4665d94583daf84d1d7477c51671e83b3b",
      "parents": [
        "796249a4ce48ed5eb946170f32541e3edf83b601"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 01 12:40:00 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 01 12:40:00 2014 -0700"
      },
      "message": "Add lsearch(3) for ltrace.\n\nBug: 13746936\nChange-Id: I833c6ba70a1752c04dab7de389f5bebb741662b3\n"
    },
    {
      "commit": "9cea3775056d0a8d04d49c3983440b89d82a462b",
      "tree": "7efc58da446fa759651030322662f6f853cf8020",
      "parents": [
        "557942ac58f08675473460b1802b43473c467172"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Mar 31 11:23:39 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Mar 31 11:23:39 2014 -0700"
      },
      "message": "Small accept4 fixes.\n\nPut the accept4 test in the sorted order, and put the accept4 define in\nsorted order.\n\nAlso add the missing SYS_RECVMMSG and SYS_SENDMMSG defines.\n\nChange-Id: Iba55354975e0d5027dbee53f6de752c2df719493\n"
    },
    {
      "commit": "50282f72bb9be6b49212a3978faec70786e9f97f",
      "tree": "fd30ad0ee980643c3f3ae923fa6d17921d15f747",
      "parents": [
        "a58b3f78e14500e7b10fc845ef0a6a8309664663"
      ],
      "author": {
        "name": "Pavel Chupin",
        "email": "pavel.v.chupin@intel.com",
        "time": "Tue Mar 25 13:43:04 2014 +0400"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Mar 28 11:15:03 2014 +0000"
      },
      "message": "Add lconv declaration and localeconv(3)\n\nlconv is taken from ndk/sources/android/support/include/locale.h and\nmatches\nbsd/glibc upstream.\nKeep old declaration for 32-bits for compatibility.\nlocaleconv.c and deps are taken from openbsd upstream.\nChanged strtod.c accordingly.\n\nChange-Id: I9fcc4d15f5674d192950d80edf26f36006cd31b4\nSigned-off-by: Pavel Chupin \u003cpavel.v.chupin@intel.com\u003e\n"
    },
    {
      "commit": "bc475bc8d1d202baa48f6c9829fe1cced9122332",
      "tree": "20940f846ec40d52c5517d28b6e96abab9180301",
      "parents": [
        "ecbf00bda2fcee65e4e6385772022529ffeeed91",
        "8f2a30a92ab6981cccbc1a9e17b738f7542ae33f"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Mar 26 19:40:59 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 26 19:40:59 2014 +0000"
      },
      "message": "Merge \"Add accept4() syscall\""
    },
    {
      "commit": "ecbf00bda2fcee65e4e6385772022529ffeeed91",
      "tree": "b85cebec3747f506dd11c4a3217e0d0cad0fa60f",
      "parents": [
        "c8fc4ddc183060aa979185d5a6845f26beb1a733",
        "f1de90b3a26d6ec46c0f1c741ef93509fe69f942"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 26 14:23:59 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 26 14:24:01 2014 +0000"
      },
      "message": "Merge \"Clean up CMSG_*HDR in \u003csys/socket.h\u003e\""
    },
    {
      "commit": "8f2a30a92ab6981cccbc1a9e17b738f7542ae33f",
      "tree": "a0ec364f2362051c4d06569ee5706c3165808b78",
      "parents": [
        "c8fc4ddc183060aa979185d5a6845f26beb1a733"
      ],
      "author": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Mar 26 15:50:01 2014 +0200"
      },
      "committer": {
        "name": "Andrei Emeltchenko",
        "email": "andrei.emeltchenko@intel.com",
        "time": "Wed Mar 26 15:50:01 2014 +0200"
      },
      "message": "Add accept4() syscall\n\nAdd accept4() using SYSCALLS.TXT and gensyscall\n\nChange-Id: I6f19f29144186d15d46423e10f2cc4b4223719c6\n"
    },
    {
      "commit": "f1de90b3a26d6ec46c0f1c741ef93509fe69f942",
      "tree": "b80cd059473878fdbb83ec9440ae827ebc98f237",
      "parents": [
        "849e162d3bedc5ca61bdf15486268b253b9f4e93"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 19 17:40:23 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Mar 25 17:07:37 2014 +0000"
      },
      "message": "Clean up CMSG_*HDR in \u003csys/socket.h\u003e\n\nRemoved __CMSG_NXTHDR, __CMSG_FIRSTHDR and cmsg_nxthdr.\n\nBug: 13418328\nChange-Id: I6b1ed58b41b3f37d41e070c4f222b5bfa512bc48\n"
    },
    {
      "commit": "9e8a8dc18cb3162858feef2d4baaf3fa357aa3d2",
      "tree": "519f12143c3a294f9b6ec933fdd376363d748340",
      "parents": [
        "95c1abecc02b2a2f40b507e669b5bc17d4412bf9",
        "c20de902875dcaebde0ccd0b7a8351598f254d4c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Mar 24 12:11:30 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 24 12:11:30 2014 +0000"
      },
      "message": "Merge \"Remove ALIGNBYTES and ALIGN from \u003csys/param.h\u003e\""
    },
    {
      "commit": "c20de902875dcaebde0ccd0b7a8351598f254d4c",
      "tree": "cb4a8a75dd787d93bca11fc0a2da944a7fc2e76f",
      "parents": [
        "849e162d3bedc5ca61bdf15486268b253b9f4e93"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Mar 20 15:21:32 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Mar 21 09:59:34 2014 +0000"
      },
      "message": "Remove ALIGNBYTES and ALIGN from \u003csys/param.h\u003e\n\nThere are only three users of bionic definition of ALIGN and keeping it\nin sys/param.h polutes the namespace.\n\nI inline the definition in the the three places that\u0027s used.\n\nBug: 13400663\nChange-Id: I565008e8426c38ffb07422f42cd8e547d53044e9\n"
    },
    {
      "commit": "7eb28b59c7665654255640e3fac4ccd5a9e1cbab",
      "tree": "fbbd8cb69d55191fd9b1d2816bfa379aba215432",
      "parents": [
        "849e162d3bedc5ca61bdf15486268b253b9f4e93"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Mar 18 17:03:38 2014 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Mar 18 17:03:38 2014 -0700"
      },
      "message": "FORTIFY_SOURCE: don\u0027t define s?printf macros if already defined\n\nClang specific: Don\u0027t #define sprintf and snprintf macros if they\nare already defined.\n\nChange-Id: I30fc507d898377e1b8a57a65a147926229e0f9e2\n"
    },
    {
      "commit": "205c7887add8b8c85434c35158138f16265beb28",
      "tree": "7220cc9b0d62a236ae7e248acd053195cb1a7575",
      "parents": [
        "d16100c1fb8a39215497243ecb12176e9688ef77"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 16:17:43 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 16:17:43 2014 -0700"
      },
      "message": "Clean up reentrancy cruft.\n\nThe DNS copy of reentrant.h was unused, so remove it.\n\nThe strtod implementation can use the upstream-netbsd reentrant.h and\nget a little closer to what was then upstream. (It\u0027s since been replaced\nby gdtoa, and we\u0027ll have to follow at some point, but for now this doesn\u0027t\nmake anything any worse.)\n\nANDROID_CHANGES is (now) only used in the DNS code, so push the -D\ndown.\n\nThe \u003clocale.h\u003e change prevents an LP32 hack from leaking into LP64.\n\nChange-Id: Idf30b98a59d7ca8f7c6cd6d07020b512057911ef\n"
    },
    {
      "commit": "f2cea021ab2c6d7d7feeb40cca098aa132605876",
      "tree": "119daf06820264a62bf3290bbbf8839dcb0196e3",
      "parents": [
        "6ece7fc33a389ef9bcbe78a83a6633e4cb4e4743"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 14:54:53 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 14:54:53 2014 -0700"
      },
      "message": "Clean up \u003cstdio.h\u003e macros.\n\nAlso neuter __isthreaded.\n\nWe should come back to try to hide struct FILE\u0027s internals for LP64.\n\nBug: 3453512\nBug: 3453550\nChange-Id: I7e115329fb4579246a72fea367b9fc8cb6055d18\n"
    },
    {
      "commit": "5a8173860d65182af022be88fed0c5d8d5dcb69d",
      "tree": "907e7263b278203193247ef582a4e1a8b263e21e",
      "parents": [
        "56e1eebd39be4830f309603b38e4b1118c544fb3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 12 16:12:57 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 12 16:12:57 2014 -0700"
      },
      "message": "Ensure we always have symbols for atof, strtof, strtold.\n\nWe\u0027ll need a better implementation of strtold for LP64, but all our\nlong double functions are currently broken for LP64 anyway so this\nisn\u0027t a regression.\n\nChange-Id: I2bdebac11245d31521d5fa09a16331c03dc4339c\n"
    },
    {
      "commit": "2282e16d76c6691968bd62a4c4bb3ecefabc98ca",
      "tree": "d3fa1fc25132fa088ec53fe35fa07e5de018c64b",
      "parents": [
        "ef43a6fb0e0c5fb1debd8db83a5b57749e8331fa",
        "2725ca95b23bc59ac7e7d7d52362c369db180671"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 12 20:48:39 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 12 20:48:39 2014 +0000"
      },
      "message": "Merge \"Use [u]int32_t instead of __[u]int32_t in sys/types.h\""
    },
    {
      "commit": "2725ca95b23bc59ac7e7d7d52362c369db180671",
      "tree": "d3968d6f45bd018b37d1f872cc9a8eead4f5fdeb",
      "parents": [
        "5810bcf381e28e423a782af9bf53c05085b09926"
      ],
      "author": {
        "name": "Pavel Chupin",
        "email": "pavel.v.chupin@intel.com",
        "time": "Wed Mar 12 11:23:49 2014 +0400"
      },
      "committer": {
        "name": "Pavel Chupin",
        "email": "pavel.v.chupin@intel.com",
        "time": "Thu Mar 13 00:23:43 2014 +0400"
      },
      "message": "Use [u]int32_t instead of __[u]int32_t in sys/types.h\n\nAvoid this error in -ffreestanding mode:\nsys/types.h:45:1: error: unknown type name \u0027__uint32_t\u0027\n\nChange-Id: I826b36873862d1d70b47401f31f4369a77666b8e\nSigned-off-by: Pavel Chupin \u003cpavel.v.chupin@intel.com\u003e\n"
    },
    {
      "commit": "8d4b5849f21dc4115ad66944dc11df838b3faa52",
      "tree": "a9d93f0a9a42b93132d6a21643cc46cdedb5e488",
      "parents": [
        "76b4f1a33caef09891114bf37562968ab627059a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 11 16:06:23 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 11 19:13:25 2014 -0700"
      },
      "message": "Clean up our termios implementation.\n\nIt\u0027s safe to fix our constant definitions because we know we never\nhad symbols before, so can\u0027t be passing the bad old constants to the new\nfunctions, or the correct new constants to the old inlines.\n\nChange-Id: I858fc680df39bdd3ba471e867833bdfa71f6224e\n"
    },
    {
      "commit": "cccfe1e17c47799deee67fa23f48d8c860390ac8",
      "tree": "6f9e16f0334ab314da4aaabea677b1c5d47f471f",
      "parents": [
        "753e1399060c08072a8fb17eb297889a2ae987d0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 11 13:37:11 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 11 13:37:11 2014 -0700"
      },
      "message": "Reimplement clock(3) and switch to OpenBSD time(3).\n\nThe new implementation is a better approximation to the processor time used\nby the process because it\u0027s actually based on resource usage rather than just\nelapsed wall clock time.\n\nChange-Id: I9e13b69c1d3048cadf0eb9dec1e3ebc78225596a\n"
    },
    {
      "commit": "a4eafa6dbc98378f3fa759fec8590871e2b5ae29",
      "tree": "4b8a1a0a8c8070ae4845d9dfcaa88daab380ae68",
      "parents": [
        "10f6beb3eb46cb2488427f58dccdd7bbfab5a250"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Mar 10 18:10:04 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Mar 11 10:44:36 2014 +0000"
      },
      "message": "Removed pthread_attr_getstackaddr/pthread_attr_setstackaddr\n\nMoved existing definitions to ndk_cruft to preserve NDK compatibility.\n\nBug: 13281069\nChange-Id: I6f260de69afa55a6274f0d13145c19ac6517b9d5\n"
    },
    {
      "commit": "247dc91889ffc8b71fc3371edba9d834afab96ab",
      "tree": "5e7fc130a6cfee3b122b0689eaeab4a2094272c8",
      "parents": [
        "a3056591960f9d9f646135ee20804cc1a9e41106"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 17:17:01 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 17:17:01 2014 -0700"
      },
      "message": "Take ownership of various simple syscall wrappers.\n\nNone of these trivial functions is something we\u0027re going to get from BSD.\n\nChange-Id: Iee1d1281b73db67da5ec303da7a49748121464bf\n"
    },
    {
      "commit": "152b9de19ade833ada124390ef153e53d3d3e2ed",
      "tree": "96e0f98537c7420007bbb3452dcbe5d57bbf5fe3",
      "parents": [
        "638e7892c63c9d6968c0cf2e98ace89b9c5b2f26"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 15:54:40 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 10 15:54:40 2014 -0700"
      },
      "message": "Remove non-standard memswap.\n\nChange-Id: I06548dda339987b755ef7139c590ca3e1f9fe0a9\n"
    },
    {
      "commit": "333e2ae87dac85d6420786e9e12ffd7ea84dae38",
      "tree": "349111bba26194b3de66d2c57ddd3b826267233e",
      "parents": [
        "4d46c940315af2d93efb44e751b69ea6880a5d65",
        "a0cd9bc3392f56ca488bea61269d7468ae6c5dce"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 08 00:52:02 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 08 00:52:02 2014 +0000"
      },
      "message": "Merge \"Add si_timerid to \u003csignal.h\u003e.\""
    },
    {
      "commit": "4d46c940315af2d93efb44e751b69ea6880a5d65",
      "tree": "e826802683bf05cbb4ef822e3b5a37485a45fe00",
      "parents": [
        "b145b5ef7c91ec76e4dc8450f70b7af80873b46e",
        "4b558f50a42c97d461f1dede5aaaae490ea99e2e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 08 00:50:56 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 08 00:50:56 2014 +0000"
      },
      "message": "Merge \"Rewrite the POSIX timer functions.\""
    },
    {
      "commit": "4b558f50a42c97d461f1dede5aaaae490ea99e2e",
      "tree": "c239a686131cdda28272c961ce98febbc0c772f8",
      "parents": [
        "bef5016491eed41521f514d5c5528e2274689948"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 04 15:58:02 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 07 16:49:46 2014 -0800"
      },
      "message": "Rewrite the POSIX timer functions.\n\nThis is a much simpler implementation that lets the kernel\ndo as much as possible.\n\nCo-authored-by: Jörgen Strand \u003cjorgen.strand@sonymobile.com\u003e\nCo-authored-by: Snild Dolkow \u003csnild.dolkow@sonymobile.com\u003e\nChange-Id: Iad19f155de977667aea09410266d54e63e8a26bf\n"
    },
    {
      "commit": "a0cd9bc3392f56ca488bea61269d7468ae6c5dce",
      "tree": "adebabdabc9f43f1dccb12e6d7e23a3a907e0c25",
      "parents": [
        "d40eb1594dff0103247292967f8a801ef8c0ff12"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 07 15:41:25 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 07 15:41:25 2014 -0800"
      },
      "message": "Add si_timerid to \u003csignal.h\u003e.\n\nThe kernel uses the very misleading name \"si_tid\", but glibc uses the more\nintention-revealing \"si_timerid\". We should let people use that.\n\n(Added because I wanted to improve SI_TIMER siginfo_t dumping in strace.)\n\nChange-Id: Ib626cdd3b57a6afb276a15753a237b4e81ec45e3\n"
    },
    {
      "commit": "d9ba757ef4546ef931cfa2fff4e206b36c955ead",
      "tree": "ad7963866ff0a7370ce4711f01e755b9ffd19c95",
      "parents": [
        "d40eb1594dff0103247292967f8a801ef8c0ff12",
        "fcb502e3ec032497bba7f8634fb214e0c05394d8"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Mar 07 11:45:58 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 07 11:45:58 2014 +0000"
      },
      "message": "Merge \"Sync up nameser with upstream(2014.03.05)\""
    },
    {
      "commit": "fcb502e3ec032497bba7f8634fb214e0c05394d8",
      "tree": "a8c36425833248efd74f1b85fc1e4c9208d3285f",
      "parents": [
        "569fb9887d00104509df79fa77d92e3cf9afe7db"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Wed Mar 05 15:06:52 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Mar 06 18:36:43 2014 +0000"
      },
      "message": "Sync up nameser with upstream(2014.03.05)\n\nBug: 13219633\n\nChange-Id: I8ee4ddf270710e9eea415fa3db984af7719a8dd4\n"
    },
    {
      "commit": "252ee1e1124ae8aef2bde0c365c9ac6d59282bc8",
      "tree": "52b9d6d31ed0467cb811ee6c7db1830c7dbbdf8c",
      "parents": [
        "bef5016491eed41521f514d5c5528e2274689948"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Mar 04 16:16:43 2014 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Mar 05 13:19:10 2014 +0000"
      },
      "message": "Stop defining HAVE_PTHREAD_COND_TIMEDWAIT_MONOTONIC.\n\nNo code is using this definition.\n\nChange-Id: I188db63f38d62baf1cb57d0a36fcda540ad98492"
    },
    {
      "commit": "0e714a5b41451e84c5ded93a42c9a4b0a9440691",
      "tree": "86e6519cc723fb66a9432193da16b380255c22f7",
      "parents": [
        "8e541b12237f597c186820b9e18b059b620bef54"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 03 16:42:47 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 04 10:27:58 2014 -0800"
      },
      "message": "Implement POSIX pthread_mutex_timedlock.\n\nThis replaces the non-standard pthread_mutex_lock_timeout_np, which we have\nto keep around on LP32 for binary compatibility.\n\nChange-Id: I098dc7cd38369f0c1bec1fac35687fbd27392e00\n"
    },
    {
      "commit": "569fb9887d00104509df79fa77d92e3cf9afe7db",
      "tree": "cd7018947017406a878b22a25481969217985664",
      "parents": [
        "4a46a68942d180e28c3e87f08359351245b220b7"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Mar 04 15:01:29 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Mar 04 15:07:07 2014 +0000"
      },
      "message": "Moved nameser.h and namser_compat.h to public include dir\n\nThis is part of the upstream sync (Net/Open/Free BSDs expose the\nnameser.h in their public headers).\n\nChange-Id: Ib063d4e50586748cc70201a8296cd90d2e48bbcf\n"
    },
    {
      "commit": "51e6cb33e3d7c2f44864d356a2a8e66317688f55",
      "tree": "48863111f16d659bbc0456662d67f5fc8ff3bef2",
      "parents": [
        "2c7c79e6e5e730553281b6d42e734ee2c532a660"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Mar 03 15:38:51 2014 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Tue Mar 04 11:17:13 2014 +0000"
      },
      "message": "Implement pthread_condattr_{get,set}clock.\n\nWe only support CLOCK_REALTIME and CLOCK_MONOTONIC for now,\nso we us a single bit from pthread_cond_t-\u003evalue to denote\nthe clock type. Note that this reduces the width of the counter\nto 30 bits, but this should be large enough for all practical\npurposes.\n\nbug: 13232338\n\nChange-Id: I857e7da64b3ecbb23eeac7c9f3fbd460f60231bd\n"
    },
    {
      "commit": "e4ab19c67d00b526a3f8c1af4e8e8153c2867294",
      "tree": "796913d98a7b1ad57b09ed747c95562aa140ef42",
      "parents": [
        "ddad384dbf802bf258e19a8d18f5d9e9fba8f97b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 03 10:57:28 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 03 10:57:28 2014 -0800"
      },
      "message": "Remove deprecated and unused constants from \u003csys/klog.h\u003e.\n\nChange-Id: I23d54b5eaf918859480f927534a3f9e3af602311\n"
    },
    {
      "commit": "a8b1eb3fcf13fab029a16fa3b6636218a64c4583",
      "tree": "d36173147fe379d5b636503743b6fe37455322a0",
      "parents": [
        "2ec592c338f5c5021f127e92212d156cd909c617"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 28 17:59:29 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 28 17:59:29 2014 -0800"
      },
      "message": "Fix build.\n\nChange-Id: I71cde79263d5f5a8382865b8151f65c5c05ea17b\n"
    },
    {
      "commit": "2ec592c338f5c5021f127e92212d156cd909c617",
      "tree": "bb83347fc1898724bb081f482e7ef227dc0a4868",
      "parents": [
        "ddc8cc7a68415acb0694f7015ea0dae70ea04550",
        "6ff0c75c838e73d2aeccc0102ab58a7b865172ca"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 01 01:14:22 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 01 01:14:23 2014 +0000"
      },
      "message": "Merge \"Add recvmmsg and sendmmsg syscalls.\""
    },
    {
      "commit": "692207eb457f9b4bf6cb4301d710d19b6e85c902",
      "tree": "4a915e398d7e0819d7ee5d0a424f4a7689c0eab9",
      "parents": [
        "d51db86aafb988aea04355f2b6a6c925d67e5976"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 28 16:23:27 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 28 16:23:27 2014 -0800"
      },
      "message": "Add getprogname/setprogname for BSD compatibility.\n\nThis is one less change we have to make when porting BSD code.\n\nBug: https://code.google.com/p/android/issues/detail?id\u003d34898\nChange-Id: If9b1a8d16996c7a19abcce8d3a456afc3e105a41\n"
    },
    {
      "commit": "6ff0c75c838e73d2aeccc0102ab58a7b865172ca",
      "tree": "664bed83a31a736af22e3ac37ff36b14e809724c",
      "parents": [
        "000ffd8ab0b4112173ce319869f4111f08fbe975"
      ],
      "author": {
        "name": "Guillaume Ranquet",
        "email": "guillaumex.ranquet@intel.com",
        "time": "Mon Feb 10 13:11:29 2014 +0100"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 27 14:29:01 2014 -0800"
      },
      "message": "Add recvmmsg and sendmmsg syscalls.\n\nAlso add the corresponding constant, struct, and function declarations\nto \u003csys/socket.h\u003e, and perfunctory tests so we know that the symbols\nactually exist.\n\nSigned-off-by: Guillaume Ranquet \u003cguillaumex.ranquet@intel.com\u003e\nChange-Id: Ib0d854239d3716be90ad70973c579aff4895a4f7\n"
    },
    {
      "commit": "3434727b3ece18d90894c3f8d9ffd000a00c9c50",
      "tree": "c59559d2e31e2da8fab09af1e7a0a8764413bcba",
      "parents": [
        "27c7dbeee6c5e0cee488ce5085cc0b8c5e0301bd"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 26 11:10:32 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 26 15:51:01 2014 -0800"
      },
      "message": "Ensure that \u003cfcntl.h\u003e has the SYNC_FILE_RANGE_* constants.\n\nNeeded to build strace at their tip of tree.\n\nChange-Id: I64db00a332088e08e25bc30357293a9308b8a226\n"
    },
    {
      "commit": "5c7816f425cb70ca6920e816aba33ce3d691ef10",
      "tree": "7f9076c57183142a7466c24cc466c22e9db6cf0d",
      "parents": [
        "a92b57c7f8230661d911f2fd6dd67a81e9a90cef",
        "53e43292aac91bf62995788cd5ca2ceb7caea283"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 25 21:41:47 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 25 21:41:48 2014 +0000"
      },
      "message": "Merge \"More OpenBSD cleanup (primarily string).\""
    },
    {
      "commit": "a92b57c7f8230661d911f2fd6dd67a81e9a90cef",
      "tree": "da3df37981e655f8d236facaf411d279183f63c9",
      "parents": [
        "7c1efffc249283b47309846abba8795f3fb91555",
        "d4934a70e69365c97b1378820152e134a0089b5e"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Feb 25 10:44:25 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 25 10:44:26 2014 +0000"
      },
      "message": "Merge \"Added ftw64, nftw64\""
    },
    {
      "commit": "7c1efffc249283b47309846abba8795f3fb91555",
      "tree": "51c0fb5fc7dd9fa85f36c4bc17c52d41dd525692",
      "parents": [
        "ba40a560176e6ea753d09a6a71343b81ea4c8c1e",
        "fe317a3775e16d466bb884a8e054fd77f7087bb3"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Tue Feb 25 10:43:30 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 25 10:43:31 2014 +0000"
      },
      "message": "Merge \"Added mkstemp64\""
    },
    {
      "commit": "53e43292aac91bf62995788cd5ca2ceb7caea283",
      "tree": "003679a1e2288bad947f714ee45bfa6febf479b6",
      "parents": [
        "ba40a560176e6ea753d09a6a71343b81ea4c8c1e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 24 18:00:43 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 24 18:02:05 2014 -0800"
      },
      "message": "More OpenBSD cleanup (primarily string).\n\nThis patch removes the string/ and wchar/ directories.\n\nChange-Id: Ia489904bc67047e4bc79acb1f3eec21aa3fe5f0d\n"
    },
    {
      "commit": "0e44bc3baeb1677e5fbdda87a737b9c508c95132",
      "tree": "1470737507c2d3924297e61e463edc18a191cc8e",
      "parents": [
        "b26e4944e2a5bf4b7e33fa38fb17a3b76c7fe0f7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 24 15:55:31 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 24 15:55:31 2014 -0800"
      },
      "message": "Remove \u003casm/page.h\u003e.\n\nIf we have PAGE_SIZE/PAGESIZE, POSIX says they should be in \u003climits.h\u003e.\n\nChange-Id: I3c2d574ea2aea81f524874a156361411a4ffa18e\n"
    },
    {
      "commit": "d4934a70e69365c97b1378820152e134a0089b5e",
      "tree": "c26c1ef275cd79486a03d9e4df76193c4a4ccc33",
      "parents": [
        "fe317a3775e16d466bb884a8e054fd77f7087bb3"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Feb 24 16:13:50 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Feb 24 20:22:11 2014 +0000"
      },
      "message": "Added ftw64, nftw64\n\nBug: 13076637\nChange-Id: I5b926526f935b00bba14c2807b61d85f95089c33\n"
    },
    {
      "commit": "fe317a3775e16d466bb884a8e054fd77f7087bb3",
      "tree": "c26e2b737d6741add069324fc0dc8a2ad31cd731",
      "parents": [
        "da030de702b756077fec536ed139e7ea38b51022"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Feb 21 15:11:03 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Mon Feb 24 20:19:19 2014 +0000"
      },
      "message": "Added mkstemp64\n\nBug: 13076637\nChange-Id: I41bf28ab3e6c7325470781e9323eeec023483df5\n"
    },
    {
      "commit": "c9ae21a5c3b2e1baafe50f752e2e07e343d39530",
      "tree": "80d3c9ac31b5c5662b70aacd9c03d9d798ceafae",
      "parents": [
        "3572fbc8cd01d90a7f0c65a15c79abf1ece144ef"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Feb 19 17:59:05 2014 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 24 10:45:35 2014 +0000"
      },
      "message": "Move system_properties over to C++.\n\nThis change constitutes the minimum amount of\nwork required to move the code over to C++, address\ncompiler warnings, and to make it const correct and\nidiomatic (within the constraints of being called\nfrom C code).\n\nbug: 13058886\n\nChange-Id: Ic78cf91b7c8e8f07b4ab0781333a9e243763298c\n"
    },
    {
      "commit": "9150dfb1c6928ceef228e640412c3653d5e87a10",
      "tree": "5cc247e8c2d506df3d86b6d2b566492cd14a8a55",
      "parents": [
        "90b0157679a984f1829a72f8c642d17030aa7644",
        "0133944b09d1c0a35041f7a41eb6bfb660144f4f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 21 23:46:52 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 21 23:46:52 2014 +0000"
      },
      "message": "Merge \"Clean up our OpenBSD usage.\""
    },
    {
      "commit": "0133944b09d1c0a35041f7a41eb6bfb660144f4f",
      "tree": "0cb37ddb83c7cf6363d917791d76420ad6f6e1c1",
      "parents": [
        "e65055af112780623f372aca6a1f78d2b2acb34f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 20 18:04:58 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 21 14:30:18 2014 -0800"
      },
      "message": "Clean up our OpenBSD usage.\n\nAlso undo some of the mess where we have OpenBSD \u003cstdio.h\u003e but a mix of\ndifferent BSD\u0027s implementations.\n\nIn this first pass, I\u0027ve only moved easy OpenBSD stuff.\n\nChange-Id: Iae67b02cde6dba9d8d06fedeb53efbfdac0a8cf6\n"
    },
    {
      "commit": "da030de702b756077fec536ed139e7ea38b51022",
      "tree": "43e29ce4f9b5128e25bb55efb78a4329104e38ac",
      "parents": [
        "44ef37c1b445e864068cdcd885ab3d7b17079ad3"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Feb 20 13:40:36 2014 +0000"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Fri Feb 21 16:27:21 2014 +0000"
      },
      "message": "Fixed int fast types for LP64\n\nBug: 13110474\nChange-Id: Id5591603ad4ba7e149c0852f4abb25e4e5a5d065\n"
    },
    {
      "commit": "6b5559315d959347fcc01781669f771746cbb2ee",
      "tree": "1a810ab6de06ed4a07b6df58ee967948d4b452ab",
      "parents": [
        "787c1f937a915feefb767d0c6a15ddb70e6de933"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 18 16:43:31 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 18 16:43:31 2014 -0800"
      },
      "message": "Use uid_t and gid_t for st_uid and st_gid in struct stat.\n\nChange-Id: Ide62dc714d76d881e3aa79e7a59ee6533a23dd00\n"
    },
    {
      "commit": "db1ea3474899ebbd783aba872d3005f95a816d0f",
      "tree": "b70fedd7d69098f5141dbbb09ef41851a61eec8d",
      "parents": [
        "3623d80675e5321b92c2d88a7b7ec6bd998d81d5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 17 18:42:49 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 18 15:39:24 2014 -0800"
      },
      "message": "Implement some of the missing LFS64 support.\n\nThis gives us:\n\n* \u003cdirent.h\u003e\n  struct dirent64\n  readdir64, readdir64_r, alphasort64, scandir64\n\n* \u003cfcntl.h\u003e\n  creat64, openat64, open64.\n\n* \u003csys/stat.h\u003e\n  struct stat64\n  fstat64, fstatat64, lstat64, stat64.\n\n* \u003csys/statvfs.h\u003e\n  struct statvfs64\n  statvfs64, fstatvfs64.\n\n* \u003csys/vfs.h\u003e\n  struct statfs64\n  statfs64, fstatfs64.\n\nThis also removes some of the incorrect #define hacks we\u0027ve had in the\npast (for stat64, for example, which we promised to clean up way back\nin bug 8472078).\n\nBug: 11865851\nBug: 8472078\nChange-Id: Ia46443521918519f2dfa64d4621027dfd13ac566\n"
    },
    {
      "commit": "671e236d5fd2cae169c2a31d0a35e66c4fcc5556",
      "tree": "55c1a2a77c279f671d77e23ff1ee89946fd6efde",
      "parents": [
        "fc48e8cf28b80ce0f95e288eeee459b4cb932afa"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 12 19:04:27 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 12 19:04:27 2014 -0800"
      },
      "message": "Restore sys_signame for LP64.\n\nmksh is using this, and we probably build as much BSD source as glibc source.\n\nChange-Id: I400d255a67f9614ca9e57090e3a2e49d2b10cba4\n"
    },
    {
      "commit": "aa0ebdafc71e1ceac78e0929b94f3bb117d0c8e9",
      "tree": "e0fa3c926172fbc3e4b1a43950ae2a7ea662deb7",
      "parents": [
        "9e572ca4163e42bcd053df2cb8557e4b61ad064d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 11 19:57:06 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Feb 12 17:09:25 2014 -0800"
      },
      "message": "Clean up sys_signame and sys_siglist a little.\n\nWe don\u0027t need quite so much duplication because we already have a way\nto get the signal number from its name, and that already copes with the\nfact that the mips/mips64 numbers are different from everyone else\u0027s.\n\nAlso remove sys_signame from LP64. glibc doesn\u0027t have this BSD-ism.\n\nChange-Id: I6dc411a3d73589383c85d3b07d9d648311492a10\n"
    },
    {
      "commit": "199346a2abd8b6ba282e1fe291cc3766fa921f40",
      "tree": "9ee2feb4ffcb2be771e2b733b1338c8755bd306a",
      "parents": [
        "022885e2fad5ef9643e05d80c6f50a2a90bf3431"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 11 20:01:11 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 11 22:16:04 2014 -0800"
      },
      "message": "Fix NSIG.\n\nOur sigset_t definition hasn\u0027t been tied to our NSIG definition since we\nswitched to uapi headers, so we can now fix it without breaking the LP32 ABI.\nThe kernel uapi headers define and use _NSIG, so we need to have our scripts\nrename the kernel\u0027s definitions out of the way, then we can define _NSIG\nand NSIG in terms of the kernel\u0027s off-by-one value.\n\nBug: 12938442\nChange-Id: Ic7c86fd5be5ad1d822f7b2b1d88c8a0d70a1ac0f\n"
    },
    {
      "commit": "a6ecba4d233d7b769a05ee81ae908c9105352624",
      "tree": "496b3cbe11b5f4037703f3855f7c95704a451d30",
      "parents": [
        "71e4466b100359f36a29c8c0277888df6081a265"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 10 18:37:02 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 11 10:24:40 2014 -0800"
      },
      "message": "Clean up cacheflush.\n\nNo cacheflush for LP64; use the GCC builtin instead. Clean up the\n32-bit MIPS implementation now we no longer need to worry about\nold versions of GCC.\n\nBug: 12924756\nChange-Id: Ie23955b3ec194e226c4b2bce35b11d5e061f4753\n"
    },
    {
      "commit": "0266ae5f884d72da58f33a072e865ba131234a5e",
      "tree": "48763b706806f544b1dec0ef98261bed6f21dee2",
      "parents": [
        "eeb9a9f59a58a2f042e8f6fd1a4911ae92ac5493"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 10 17:46:57 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 10 18:22:24 2014 -0800"
      },
      "message": "Switch \u003celf.h\u003e over to linux uapi under the covers.\n\nRemove the linker\u0027s reliance on BSD cruft and use the glibc-style\nElfW macro. (Other code too, but the linker contains the majority\nof the code that needs to work for Elf32 and Elf64.)\n\nAll platforms need dl_iterate_phdr_static, so it doesn\u0027t make sense\nto have that part of the per-architecture configuration.\n\nBug: 12476126\nChange-Id: I1d7f918f1303a392794a6cd8b3512ff56bd6e487\n"
    },
    {
      "commit": "3a9c5d66dc8d41272f51482b713717af7049697e",
      "tree": "7e2ee59d14ba82f70ed233195ccb04ae5f2afa34",
      "parents": [
        "e74fc3a64fe9296813e5bd867d0c66bd8213be6a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 10 13:31:13 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 10 13:31:13 2014 -0800"
      },
      "message": "Fix \u003clink.h\u003e.\n\nAlso move some of the stuff that should be in \u003clink.h\u003e out of the\nprivate \"linker.h\", to make it clearer that these are public API\nknown to gdb that we can\u0027t change.\n\nBug: 12554197\nChange-Id: I830e1260d3d8b833ed99bc1518f1c6b6102be8af\n"
    },
    {
      "commit": "ebd90b9ba99cdd49a4a4eea38b1b8654af942e97",
      "tree": "84c7f281ae270ff073dda6deb9621350aba20488",
      "parents": [
        "c16a4532917259fabc8018d681cdd1ad1b1b5e08"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 07 16:50:55 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 07 16:50:55 2014 -0800"
      },
      "message": "Fix socklen_t (on LP64 only).\n\nToo late to fix LP32 :-(\n\nBug: 12935461\nChange-Id: Ib056ca1eaf9ae8712f88ae21ff94e91b08cf588b\n"
    },
    {
      "commit": "c16a4532917259fabc8018d681cdd1ad1b1b5e08",
      "tree": "53ca50e4054f0acaffa041d2833b832404fbd563",
      "parents": [
        "4affcbf87769c43c4d03ecd60f902b0b6a6cb84a",
        "9f87a0b285128542a221f2b69d3b959a4e33c054"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Feb 08 00:23:50 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 08 00:23:50 2014 +0000"
      },
      "message": "Merge \"Remove \u003csys/_types.h\u003e.\""
    },
    {
      "commit": "9f87a0b285128542a221f2b69d3b959a4e33c054",
      "tree": "6854c64ecb95a5d048e7880b6493f7448a402ccc",
      "parents": [
        "e163a3986aa7d1c67fe3274eb9204812be0a6245"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 07 14:55:58 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 07 14:55:58 2014 -0800"
      },
      "message": "Remove \u003csys/_types.h\u003e.\n\nBug: 12213562\nChange-Id: I0d10664f9da60739bdbad0408be0dd61eea3c1fe\n"
    },
    {
      "commit": "645d0312c2d6b6492cc4b3891bc1a91908dc24b7",
      "tree": "4ec0e5c08e0c5a60dc7f9dfbb65e49aa8c57a138",
      "parents": [
        "5036935c41d9193cfbba606df2121cd4c6973116"
      ],
      "author": {
        "name": "Chris Dearman",
        "email": "chris.dearman@imgtec.com",
        "time": "Wed Feb 05 18:51:43 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 06 16:22:20 2014 -0800"
      },
      "message": "[MIPS64] libc/libm support\n\nlibc/libm support for MIPS64 targets\n\nChange-Id: I8271941d418612a286be55495f0e95822f90004f\nSigned-off-by: Chris Dearman \u003cchris.dearman@imgtec.com\u003e\nSigned-off-by: Raghu Gandham \u003craghu.gandham@imgtec.com\u003e\n"
    },
    {
      "commit": "9afe2884c7fe11f862982fd550a2ead688f2044d",
      "tree": "69b97d715c09e405c76354e314de27b69723164e",
      "parents": [
        "12e8b76e5f799b2b8407bf354a9675577529d34b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 04 19:26:31 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 04 19:26:31 2014 -0800"
      },
      "message": "Kill \u003cmachine/_types.h\u003e.\n\nMost of \u003cmachine/_types.h\u003e was either unused, wrong, or identical across\nall 32-/64-bit architectures.\n\nI\u0027m not a huge fan of \u003csys/_types.h\u003e either, but moving the bits we need\nup into there is a step forward.\n\nBug: 12213562\nChange-Id: Id13551c78966e324beee2dd90c5575e37d2a71e6\n"
    },
    {
      "commit": "f64b8ea09db3bdd84eed59f7721301743332b3fe",
      "tree": "6d45a510ee831e1bc154170170afe7c931474ebc",
      "parents": [
        "a122c376ef0737454a592cf44f50beabe154e9e3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 03 16:20:46 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 03 16:20:46 2014 -0800"
      },
      "message": "Add fallocate/fallocate64/posix_fallocate/posix_fallocate64.\n\nBug: 5287571\nBug: 12612860\nChange-Id: I4501b9c6cdf9a830336ce0b3afc4ea716b6a0f6f\n"
    },
    {
      "commit": "8d60cc63163df81938305632e1b7474aeda17d52",
      "tree": "da12d1c2995aeeea5d08107025b76c31f28aaa6e",
      "parents": [
        "fb4da1e7b749b4cf6843515517e839efa1ee24c7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 03 15:41:57 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 03 15:41:57 2014 -0800"
      },
      "message": "Use __inline__ for fortify.\n\nlibunwind has #define inline /* empty */ which breaks our fortified headers.\nglibc uses __inline but our BSD-derived headers often override that. __inline__\nis the third alternative understood by GCC that -- as far as I know -- neither\nthe C library itself nor third-party code tries to mess with.\n\nBug: 12871594\nChange-Id: I6677e70ea531bb7d4c46021b43af760d4ad8ecf7\n"
    },
    {
      "commit": "7b95807fa086174cbab146cbd7c60a6d2e386917",
      "tree": "d1bb0fe2e71d96a91e3bcc60c7c9d8402a7cc433",
      "parents": [
        "07f84025520a9530760a2f2535a1effde5ec51dd"
      ],
      "author": {
        "name": "Ross McIlroy",
        "email": "rmcilroy@google.com",
        "time": "Fri Jan 31 04:45:53 2014 +0000"
      },
      "committer": {
        "name": "Ross McIlroy",
        "email": "rmcilroy@google.com",
        "time": "Fri Jan 31 04:45:53 2014 +0000"
      },
      "message": "Add missing ucontext_t definition to bionic for arch-arm64.\n\nChange-Id: I1ee15230c63e00f01d2063cfffcffe7f1a1eeb6a\n"
    },
    {
      "commit": "3614424e107849c53759ef93b9166e69a76818df",
      "tree": "2db2487dd642e557da50128bd125c8a795b890af",
      "parents": [
        "53a55c121b458e4131e025f1bbe0e4e2b1b232f7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 30 10:39:02 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 30 10:39:02 2014 -0800"
      },
      "message": "Make ARM \u003cuser.h\u003e more glibc-compatible.\n\nChange-Id: I681930ad7f80a5e7bc40eb0f36872e415445f0f9\n"
    },
    {
      "commit": "02c661b88384a4a0cd5dd2b32123968bd992873f",
      "tree": "125c8846b87f9996c6c1a55e3310039112aa0a08",
      "parents": [
        "807bbb75f14543a72b3f745d35f2c97a92752cd0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 29 18:37:15 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 29 18:37:15 2014 -0800"
      },
      "message": "Add mips \u003csys/ucontext.h\u003e.\n\nChange-Id: I2821f523f0c3bb4400b2ad5d36e21e5a3d6d777c\n"
    },
    {
      "commit": "4e72fcc3c2b8bcaab653732dfd3edd137602c648",
      "tree": "c08386f914788420c9eb41f4a4627ce4d13d4916",
      "parents": [
        "8f355275920f8be82f56e30087a57b1d5ce49771"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 29 17:53:59 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 29 17:53:59 2014 -0800"
      },
      "message": "Add arm \u003csys/ucontext.h\u003e.\n\nChange-Id: I14d435f9e3e82f77d8a7e886ff88c18f5d09d14a\n"
    },
    {
      "commit": "677a07cb9a3f5964e9ead4d37b9f775d971c61e0",
      "tree": "08f35f05834b56e79584cce2c02a9e55539a8176",
      "parents": [
        "972c39c4fee85c5c532eecac409a1384c76b2cc6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 29 16:46:00 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 29 16:46:00 2014 -0800"
      },
      "message": "Add x86 \u003csys/ucontext.h\u003e.\n\nChange-Id: I43e72604f7a932f134733b78094b577415a5edb7\n"
    },
    {
      "commit": "e61d106008f7d77fa1c0de43ac27311320225135",
      "tree": "7b13d23c2987c0486e71084a1948f1a544d34712",
      "parents": [
        "037b10d05a789eb57878127ee4d69db1008e8c80"
      ],
      "author": {
        "name": "Pavel Chupin",
        "email": "pavel.v.chupin@intel.com",
        "time": "Mon Jan 27 17:56:43 2014 +0400"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 29 15:35:33 2014 -0800"
      },
      "message": "Add x86_64 ucontext.h for better compatibility\n\nAs suggested here: https://android-review.googlesource.com/#/c/71267/\nit may be used for x86_64 libunwind enabling.\n\nChange-Id: I21623261a48ea7099e030d33932556e294d226ff\nSigned-off-by: Pavel Chupin \u003cpavel.v.chupin@intel.com\u003e\n"
    },
    {
      "commit": "e2a292d278b94fec3d078b1f1b27c1f89942c276",
      "tree": "92f56a8b0e38cd4576453bf8db9fdecd8c7fe077",
      "parents": [
        "513f83bb7f6961d60eb10d2ab14fb31fed190bce"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 24 16:37:04 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 24 16:38:07 2014 -0800"
      },
      "message": "Remove __STDC_FORMAT_MACROS and __STDC_LIMIT_MACROS guards (and fix SIZE_MAX for LP64).\n\nThe various committees decided that everyone should get all these macros,\nall the time.\n\nBug: 12708004\nChange-Id: Ib56010dcba9b0656e5701546fefb7f78dc0bf916\n"
    },
    {
      "commit": "323d4b6f6839b472ac02c31105727147660dc4db",
      "tree": "e5374de63274cd89e3bfcee3adfd4a0a3b89da00",
      "parents": [
        "ae189740de6b03f06a06214122183a3774f5cb62"
      ],
      "author": {
        "name": "Vadim Markovtsev",
        "email": "gmarkhor@gmail.com",
        "time": "Mon Jan 13 11:54:42 2014 +0400"
      },
      "committer": {
        "name": "Vadim Markovtsev",
        "email": "gmarkhor@gmail.com",
        "time": "Wed Jan 15 07:32:52 2014 +0000"
      },
      "message": "Add \"__noreturn\" to assert and assert2\n\nThese functions should print assertion violation messages and then\ncall abort(). They do really not return control flow afterwards.\nConsider the declaration of the similar __assert_fail from glibc:\n\nextern void __assert_fail (const char *__assertion,\n                           const char *__file,\n\t\t\t   unsigned int __line,\n                           const char *__function)\n     __THROW __attribute__ ((__noreturn__));\n\nBionic has __noreturn defined in sys/cdefs.h to be that GNU\nnoreturn attribute.\n\nThis patch has a practical value. Consider the following function:\n\nvoid check(void* ptr) {\n  assert(ptr !\u003d NULL);\n}\n\nWithout this patch applied, gcc (and presumably clang) shows even in\ndebug mode:\n\nwarning: unused parameter \u0027ptr\u0027 [-Wunused-parameter]\n\nIn release mode, NDEBUG is defined and assert() becomes a no-op, as\none should expect. Thus, the warning is shown correctly then.\n\nAnother code sample:\n\nfloat array[2];\nint i \u003d 3;\n...\nassert(i \u003c 2);\narray[i] \u003d 0;\n\ngcc says,\n\nwarning: array subscript is below array bounds [-Warray-bounds]\n\nIn other words, without noreturn attribute, assertions do not\nallow a compiler\u0027s static analyzer to properly understand\nthe preconditions.\n\nChange-Id: I3be92e99787c528899cf243ed448c4730c00c45b\nSigned-off-by: Vadim Markovtsev \u003cgmarkhor@gmail.com\u003e\n"
    },
    {
      "commit": "ae189740de6b03f06a06214122183a3774f5cb62",
      "tree": "03221fea070b4af89629b84dec4b897d3d37011b",
      "parents": [
        "f784f0365d0c491cba7e6081a072b28ad357fef6",
        "c835c35727e473758903e1c44c7a72aa6b9965fc"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 10 23:35:47 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jan 10 23:35:47 2014 +0000"
      },
      "message": "Merge \"Add some more headers.\""
    },
    {
      "commit": "c835c35727e473758903e1c44c7a72aa6b9965fc",
      "tree": "9a5e7b48e66dade5385e5ea862949da67c480105",
      "parents": [
        "33c3e8d3b2312be3a3eb9d2632c4a570969e1624"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 10 15:32:31 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jan 10 15:32:31 2014 -0800"
      },
      "message": "Add some more headers.\n\nThis patch adds trivial implementations of the missing sys headers\nneeded by strace. All strace needs are the constants and structures,\nso this is enough for now. We can come back and add the functions\nif/when we ever need them.\n\nChange-Id: Idb87c1a8b6b1c62f6e16ae94f147e1169722b48e\n"
    },
    {
      "commit": "4e9cb032d1eab7ceaef47f4d5104d2c42d556ce2",
      "tree": "b56bcbacd448e4f54a61c7e6722b5f1ac153a643",
      "parents": [
        "33c3e8d3b2312be3a3eb9d2632c4a570969e1624"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Thu Jan 09 14:06:20 2014 -0800"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Fri Jan 10 01:24:34 2014 +0000"
      },
      "message": "Add extra libc stubs for mntent related functions.\n\nThis adds stubs for setmntent() and endmntent().\n\nChange-Id: I6ccaa044145405cd7226c1c54a25d435c96a2308\n"
    },
    {
      "commit": "33c3e8d3b2312be3a3eb9d2632c4a570969e1624",
      "tree": "8e0e1e6e29a98063ca606a1330d1ae6857ff889a",
      "parents": [
        "8e6bf35a16532f9e90ce85b0674a0ff19dbef557",
        "1272dbd1d76c979358fff3beae9de0c1462345af"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 23:53:58 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 09 23:53:58 2014 +0000"
      },
      "message": "Merge \"Add NT_PRSTATUS to \u003celf.h\u003e.\""
    },
    {
      "commit": "1272dbd1d76c979358fff3beae9de0c1462345af",
      "tree": "e7fce5f420577ae6b471d75bb8a1f8c5864c51f8",
      "parents": [
        "6114ffb3e16c114c728c31b472263660e2d2210c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 15:45:07 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 15:45:07 2014 -0800"
      },
      "message": "Add NT_PRSTATUS to \u003celf.h\u003e.\n\nNeeded by aarch64.\n\nBug: 12476126\nChange-Id: I7764664459a06cf4f2a60e707bd968d321a78430\n"
    },
    {
      "commit": "8e6bf35a16532f9e90ce85b0674a0ff19dbef557",
      "tree": "ed01c4322aa330c3e80595b6cbcea8cb6e5d31eb",
      "parents": [
        "d29c75f0907f1ea57b37ddbec0a41d8739ece6d8",
        "1c2cf23a0c54619e7a362e1b82b0fb37ec9dd11a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 22:24:33 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jan 09 22:24:34 2014 +0000"
      },
      "message": "Merge \"Add \u003csgidefs.h\u003e.\""
    },
    {
      "commit": "f8b2b3c81ea4cebf1f9adbb47cc9dfb81a1ed309",
      "tree": "7c3361a631af642d38c72e0165639d9c4f5db9eb",
      "parents": [
        "6114ffb3e16c114c728c31b472263660e2d2210c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 14:01:18 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 14:01:18 2014 -0800"
      },
      "message": "Fix x86 user_regs_struct.\n\nI fixed x86-64 yesterday, but didn\u0027t fix x86 at the same time.\n\nChange-Id: I5c081f5956dfedb9389af303369b841dd0fc1953\n"
    },
    {
      "commit": "1c2cf23a0c54619e7a362e1b82b0fb37ec9dd11a",
      "tree": "b7164059ffc8d37daa3cf1d77ee7eaf5b9c366d0",
      "parents": [
        "6114ffb3e16c114c728c31b472263660e2d2210c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 13:54:49 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 13:54:49 2014 -0800"
      },
      "message": "Add \u003csgidefs.h\u003e.\n\nChange-Id: I543d502a81dcb8d5969f814b8a9a9c819bc4fa2c\n"
    },
    {
      "commit": "a8a3178445e8a229671977411f44c04844dcc1ab",
      "tree": "4bb201cee62087a277da0dc9328597a102309244",
      "parents": [
        "c65cbf97d9769025ad83d6e7f4e7daa58a273a4c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 12:37:12 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 12:37:12 2014 -0800"
      },
      "message": "Add the glibc-compatible d_fileno.\n\nd_ino is the POSIX name, but glibc also offers d_fileno, and\nthat\u0027s what strace is using.\n\nChange-Id: I3fadbe7a64700b42e78c7f4631620e864d43147b\n"
    },
    {
      "commit": "0f461e35f63200641fc53bba222845a84589c024",
      "tree": "d5b0d3a9e13f4699bdc57dfd422a69ddfdde5090",
      "parents": [
        "8276d2875f64587e266567f5bb2c5e0c70ef0a5d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 10:17:03 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 09 11:00:04 2014 -0800"
      },
      "message": "Fix \u003csys/resource.h\u003e.\n\nThe situation here is a bit confusing. On 64-bit, rlimit and rlimit64 are\nthe same, and so getrlimit/getrlimit64, setrlimit/setrlimit64,\nand prlimit/prlimit64 are all the same. On 32-bit, rlimit and rlimit64 are\ndifferent. 32-bit architectures other than MIPS go one step further by having\nan even more limited getrlimit system call, so arm and x86 need to use\nugetrlimit instead of getrlimit. Worse, the 32-bit architectures don\u0027t have\n64-bit getrlimit- and setrlimit-equivalent system calls, and you have to use\nprlimit64 instead. There\u0027s no 32-bit prlimit system call, so there\u0027s no\neasy implementation of that --- what should we do if the result of prlimit64\nwon\u0027t fit in a struct rlimit? Since 32-bit survived without prlimit/prlimit64\nfor this long, I\u0027m not going to bother implementing prlimit for 32-bit.\n\nWe need the rlimit64 functions to be able to build strace 4.8 out of the box.\n\nChange-Id: I1903d913b23016a2fc3b9f452885ac730d71e001\n"
    }
  ],
  "next": "8276d2875f64587e266567f5bb2c5e0c70ef0a5d"
}
