)]}'
{
  "log": [
    {
      "commit": "b3904ee5b99a5cf12d4a19d190a3584ec5fcafde",
      "tree": "136676d2087cb36937bd9a69a47eb26f390df924",
      "parents": [
        "0aad38db94a851d91fb74adb8e43cd347718117a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 13 20:19:31 2024 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Aug 13 20:19:31 2024 +0000"
      },
      "message": "Add mseal(2) wrapper.\n\nChange-Id: I053b2d570cd5750285fc20e9e237e04d59778bf5\n"
    },
    {
      "commit": "bebe3d5b21682badf5eeba6b057c1074945935b9",
      "tree": "f378acab4e200dbc19df25c1415ff0d5083272f7",
      "parents": [
        "cbc07d4d316bb2c7a882db5b8ff5da1de0b2b043"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 07 17:16:34 2024 -0400"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 12 21:10:51 2024 +0000"
      },
      "message": "Move the ILP32 mremap() hackery into legacy_32_bit_support.cpp.\n\nSimilar to mmap(), this confuses me every time I look at it. Move it out\nof the way, and make it clearer that this is just junk that can be\ndeleted when we remove 32-bit support.\n\nAlso improve coverage by adding a test for the varargs special case.\n\nTest: treehugger\nMerged-in: Ia375c29d18e31e646b795e643534f0be07d382b9\nChange-Id: Ia375c29d18e31e646b795e643534f0be07d382b9\n"
    },
    {
      "commit": "41c8951c9162d5acb9257231fa5e0d38bf5a968b",
      "tree": "e38d81d4aa7d93691716da7b42990841a69294b6",
      "parents": [
        "b4e22199878209822a2f73bfd468df8b3d2208e9"
      ],
      "author": {
        "name": "Kalesh Singh",
        "email": "kaleshsingh@google.com",
        "time": "Thu Oct 19 14:10:31 2023 -0700"
      },
      "committer": {
        "name": "Kalesh Singh",
        "email": "kaleshsingh@google.com",
        "time": "Thu Oct 19 15:49:50 2023 -0700"
      },
      "message": "bionic: tests: Remove PAGE_SIZE usage\n\nInstead of the hardcoded PAGE_SIZE 4096 macro, use the\nreal system page-size as queried from the auxillary vector.\n\nBug: 277272383\nBug: 300367402\nTest: atest -c bionic-unit-tests\nChange-Id: I2f1ad1b431e36ef45e9f53f713ced6b06e0d4f70\nSigned-off-by: Kalesh Singh \u003ckaleshsingh@google.com\u003e\n"
    },
    {
      "commit": "4ae4be9263e2b0dfed5a5222ba186607a59096a6",
      "tree": "674eeeee3ea6ed8a2e1379fee2ab1390037ce0b4",
      "parents": [
        "68011a4ac7bf7b56ee148bbdfef44dd69364109e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Sep 22 17:15:25 2023 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Sep 22 17:15:25 2023 -0700"
      },
      "message": "Clean up how we skip tests when a syscall isn\u0027t in the kernel.\n\nThe close_range() test in particular has been confusing a lot of\npartners. I think the sys_epoll_test.cpp idiom is the clearest of the\nones in use, so let\u0027s use that everywhere. (I haven\u0027t actually touched\nthe SysV IPC tests, because if we do touch them, _deleting_ them --\nsince all those syscalls are not allowed on Android -- is probably the\nchange to be made!)\n\nI\u0027m on the fence about factoring this idiom out into a macro. There\nshould never be too many of these, and we should probably be removing\nthem? Is anyone still running the current bionic tests on 4.3 kernels\nwithout membarrier(2), and if they are --- why?!\n\nFor now though, I haven\u0027t removed any of our existing tests; I\u0027ve just\nmoved them over to the sys_epoll_test.cpp style.\n\nTest: treehugger\nChange-Id: Ie69a0bb8f416c79957188e187610ff8a3c4d1e8f\n"
    },
    {
      "commit": "95646e66666113a5463085ef34da345b0fb7e5e9",
      "tree": "42c7d3a270f006219970d4e27db7a1e979b00f8a",
      "parents": [
        "631dfbb8ad2edd23e008c820f499152ac0d16caa"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Sep 21 14:11:19 2023 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Sep 21 14:15:59 2023 -0700"
      },
      "message": "Add ASSERT_ERRNO and EXPECT_ERRNO (and use them).\n\nWe\u0027ve talked about this many times in the past, but partners struggle to\nunderstand \"expected 38, got 22\" in these contexts, and I always have to\ngo and check the header files just to be sure I\u0027m sure.\n\nI actually think the glibc geterrorname_np() function (which would\nreturn \"ENOSYS\" rather than \"Function not implemented\") would be more\nhelpful, but I\u0027ll have to go and implement that first, and then come\nback.\n\nBeing forced to go through all our errno assertions did also make me\nwant to use a more consistent style for our ENOSYS assertions in\nparticular --- there\u0027s a particularly readable idiom, and I\u0027ll also come\nback and move more of those checks to the most readable idiom.\n\nI\u0027ve added a few missing `errno \u003d 0`s before tests, and removed a few\nstray `errno \u003d 0`s from tests that don\u0027t actually make assertions about\nerrno, since I had to look at every single reference to errno anyway.\n\nTest: treehugger\nChange-Id: Iba7c56f2adc30288c3e00ade106635e515e88179\n"
    },
    {
      "commit": "25725717861813c18189c2699cf663bdb984d1b9",
      "tree": "d7a17418faacb559a5c30182f39413ac461fb1c4",
      "parents": [
        "83f9b287928bf8bd99bf098a1e4c9e853f30e092"
      ],
      "author": {
        "name": "zijunzhao",
        "email": "zijunzhao@google.com",
        "time": "Thu May 04 23:29:00 2023 +0000"
      },
      "committer": {
        "name": "Zijun Zhao",
        "email": "zijunzhao@google.com",
        "time": "Thu May 18 19:02:25 2023 +0000"
      },
      "message": "Nullability check for mman module.\n\nBugs: b/245972273\nTest: adb shell\nChange-Id: Ib5c4887d89581eaedcf4a3e128811a6a374a8d1b\n"
    },
    {
      "commit": "3d24d2b0883ea828443fd7c36d1b262410618aca",
      "tree": "90ddca40aa1d86f1c182462d5b3386a4375dcc3f",
      "parents": [
        "a5c9c7c56542b6471575148b8a3654078b180940"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Aug 05 13:53:01 2019 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Aug 05 16:31:08 2019 -0700"
      },
      "message": "Add memfd_create(2) and mlock2(2).\n\nThese are old enough now that the latest devices will have kernels that\nsupport them.\n\nAlso add basic doc comments to \u003csys/mman.h\u003e.\n\nTest: treehugger\nChange-Id: I1b5ff5db0b6270f5c374287cac1d6a751a0259f5\n"
    },
    {
      "commit": "68a3bcc249b04394b73991c5272aa0ae4bde7676",
      "tree": "1198b5a3d89086b82223d8ee7271d215643c03a3",
      "parents": [
        "c2d3e67a77fe284e8f8f1ae4dd4a67a669bfd644"
      ],
      "author": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Tue Nov 13 07:35:21 2018 -0800"
      },
      "committer": {
        "name": "Mark Salyzyn",
        "email": "salyzyn@google.com",
        "time": "Tue Nov 13 10:57:28 2018 -0800"
      },
      "message": "bionic tests: switch to using android-base/file.h for TemporaryFile\n\nA matching definition of TemporaryFile exists in libbase now.\n\nTest: compile\nBug: 119313545\nChange-Id: I6f84dbf3af9a9c4b270a2532a36c9cb4c0f6bb8f\n"
    },
    {
      "commit": "32bc0fcf69dfccb3726fe572833a38b01179580e",
      "tree": "abca656f500087493e0997d5cf38cbcc9ec98eb8",
      "parents": [
        "65f82092a17518080178ff7004cc6db362ebfbcd"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Aug 02 17:31:13 2018 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu Aug 02 18:09:44 2018 -0700"
      },
      "message": "Modernize codebase by replacing NULL with nullptr\n\nFixes -Wzero-as-null-pointer-constant warning.\n\nTest: m\nBug: 68236239\nChange-Id: I5b4123bc6709641315120a191e36cc57541349b2\n"
    },
    {
      "commit": "7b0af7ad82fcf88e800d1a553d81fda29dc064bd",
      "tree": "4cf982c55c48b49864bcb4f986c7400d640930e0",
      "parents": [
        "3b64f8ecb3db49574cc5b7c6030be98c159be4d4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Sep 15 16:09:22 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Sep 15 16:18:49 2017 -0700"
      },
      "message": "Always log errno when aborting.\n\n(Where errno is relevant.)\n\nAlso consistently use -1 as the fd for anonymous mmaps. (It doesn\u0027t matter,\nbut it\u0027s more common, and potentially more intention-revealing.)\n\nBug: http://b/65608572\nTest: ran tests\nChange-Id: Ie9a207632d8242f42086ba3ca862519014c3c102\n"
    },
    {
      "commit": "4a253496b86522ec732a89f19d4ca534d71d53f2",
      "tree": "024567cba4529a3922e8339f77d218e01b8ec894",
      "parents": [
        "55653cc33bb4ade9441d928540b9486029f6616f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 14 17:07:17 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 14 17:07:17 2016 -0700"
      },
      "message": "Add a test for a known kernel bug.\n\nBug: http://b/27265969\nChange-Id: I981cb6a91015bd17d362987ed12c8ca638987c5b\n"
    },
    {
      "commit": "2feb9dde6090a4b88d0cadc0a69245beeb173468",
      "tree": "71135ccb2317fb72438b16a1ef7d08389232b8ab",
      "parents": [
        "c22a7de798c4c0da30ad095a0c61a8f905eb9613"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Nov 19 13:44:20 2015 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Thu Nov 19 13:44:20 2015 -0800"
      },
      "message": "Fix test build break.\n\nChange-Id: I73a39c6d4bb9baebbfb5572e9259bcd405116039\n"
    },
    {
      "commit": "c22a7de798c4c0da30ad095a0c61a8f905eb9613",
      "tree": "a6dadbf1ceae2c3cb0811b6c91d1619d48fcd7c5",
      "parents": [
        "313632db574d101275206ca025d21a5a3cd62150"
      ],
      "author": {
        "name": "Daniel Micay",
        "email": "danielmicay@gmail.com",
        "time": "Sat Nov 07 10:40:26 2015 -0500"
      },
      "committer": {
        "name": "Daniel Micay",
        "email": "danielmicay@gmail.com",
        "time": "Thu Nov 19 08:57:47 2015 -0500"
      },
      "message": "extend the PTRDIFF_MAX size check to mremap\n\nThis removes another way to obtain objects larger than PTRDIFF_MAX. The\nonly known remaining hole is now jemalloc\u0027s merging of virtual memory\nspans.\n\nTechnically this could be wrapped in an __LP64__ ifndef since it can\u0027t\noccur on 64-bit due to the 1:1 split. It doesn\u0027t really matter either\nway.\n\nChange-Id: Iab2af242b775bc98a59421994d87aca0433215bd\n"
    },
    {
      "commit": "4200e260d266fd0c176e71fbd720d0bab04b02db",
      "tree": "b2c934fc4e2f546504cc02fdccd5f83fd60c6d37",
      "parents": [
        "ef5e647891f1a0aefeab4a87e9225e47087c6301"
      ],
      "author": {
        "name": "Daniel Micay",
        "email": "danielmicay@gmail.com",
        "time": "Tue Nov 03 05:14:08 2015 -0500"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Nov 06 13:14:43 2015 -0800"
      },
      "message": "fix the mremap signature\n\nThe mremap definition was incorrect (unsigned long instead of int) and\nit was missing the optional new_address parameter.\n\nChange-Id: Ib9d0675aaa098c21617cedc9b2b8cf267be3aec4\n"
    },
    {
      "commit": "5afae64a1bac56638c6348f0c8f5e9d61b654029",
      "tree": "596b834f553f804c84a13615f30ff6ad67201303",
      "parents": [
        "230005c4bd3910ef974694f88d04e6f6a5a540b4"
      ],
      "author": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Tue Nov 25 20:17:27 2014 -0800"
      },
      "committer": {
        "name": "Yabin Cui",
        "email": "yabinc@google.com",
        "time": "Thu Dec 04 11:01:28 2014 -0800"
      },
      "message": "implement posix_madvise\n\nBug: 18472477\nChange-Id: I8183de6c281acf69ed5f7f88351b056b9827b162\n"
    },
    {
      "commit": "eda26bc1ffc60dc722a375095b9de4fd86959a1d",
      "tree": "42945943a50e5da2babb16bc05eaff7868ff3e36",
      "parents": [
        "b67a3c271616d7b2506ead15e97c6a840b5eb5a8"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jun 12 13:16:36 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Jun 12 13:16:36 2014 -0700"
      },
      "message": "Add/Remove mmap tests.\n\nRemove the incorrect tests that use a negative offset for mmap without\na fd.\n\nAdd a small set of tests for mmap.\n\nBug: 15436969\n\nChange-Id: Id537d33cd4cdc26dee6cdfa9bf9cf35754bce335\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": "431166d99519f6794f10c48694913d2fe864b841",
      "tree": "7c148908e51c210646a28f890da96897e6000138",
      "parents": [
        "652dd5196df87bdeef7bff452f1a4857a96e3133"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jan 27 16:28:31 2014 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jan 27 16:36:56 2014 -0800"
      },
      "message": "Fix 32-bit mmap/mmap64 handling of negative offsets.\n\nWe don\u0027t actually need to worry about sign extension if we reject\nnegative values ourselves. Previously it was possible to come up\nwith negative but aligned values that we would pass to the kernel;\nin the case of mmap (as opposed to mmap64) we\u0027d incorrectly turn\nthose into large positive offsets.\n\nChange-Id: I2aa583e0f892d59bb77429aea8730b72db32dcb0\n"
    }
  ]
}
