)]}'
{
  "log": [
    {
      "commit": "546723b2b804d8e12c2774c7338073184cf90075",
      "tree": "2b78d6753c941dd74dc14a17eb07e2831e014d10",
      "parents": [
        "921b3a4642c2d24e7580ae542ff10e0319a2453d"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Jun 04 17:27:39 2021 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Jun 04 17:32:51 2021 -0700"
      },
      "message": "Use ro.build.type instead of ro.debuggable\n\nThe LD_CONFIG_FILE test needs to match how Bionic was compiled, and\nBionic only enables LD_CONFIG_FILE for debug builds (i.e. ro.build.type\nis \"user\"). ro.debuggable can be forced on without recompiling Bionic.\n\nBug: http://b/140324381\nBug: http://b/189422994\nTest: bionic unit tests\nChange-Id: I139059a7f94d15a5447dab292927606a6bcc48ef\n"
    },
    {
      "commit": "ec580d3d07e3891bdec50226c734d8b4d3314dae",
      "tree": "3672f492f20cc17b92b4f09b5cf45df73d2b1b05",
      "parents": [
        "27cf25419303e5cafc9e2388bb831723203d0708"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 12 15:55:29 2021 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 12 15:56:49 2021 -0700"
      },
      "message": "Make the tests that call readelf(1) less sensitive to whitespace.\n\nBug: http://b/185168726\nTest: treehugger\nChange-Id: I13dbbf57c7366966d51b8ea771ec9edd52505e72\n"
    },
    {
      "commit": "058eb8fa4ef22f6cdc5a25bf42e4766fbf5812ce",
      "tree": "c4dcd7b1955a848d40daec8618fb336e97fa3f51",
      "parents": [
        "fcd9c78534b865951eb70b02eb3a424f08ecd6a6"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Dec 17 22:59:04 2020 -0800"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Fri Jan 22 03:27:43 2021 -0800"
      },
      "message": "Ensure same order of global group members in all NS\u0027s\n\nDuring \"step 1\" of find_libraries, the linker finds the transitive\nclosure of dependencies, in BFS order. As it finds each library, it\nadds the library to its primary namespace (so that, if some other\nlibrary also depends on it, find_loaded_library_by_soname can find the\nlibrary in the process of being loaded).\n\nLD_PRELOAD libraries are automatically marked DF_1_GLOBAL, and any\nDF_1_GLOBAL library is added to every linker namespace. Previously,\nthis secondary namespace registration happened after step 1. The result\nis that across different namespaces, the order of libraries could vary.\nIn general, a namespace\u0027s primary members will all appear before\nsecondary members. This is undesirable for libsigchain.so, which we\nwant to have appear before any other non-preloaded library.\n\nInstead, when an soinfo is added to its primary namespace, immediately\nadd it to all the other namespaces, too. This ensures that the order of\nsoinfo objects is the same across namespaces.\n\nExpand the dl.exec_with_ld_config_file_with_ld_preload and\ndl.exec_with_ld_config_file tests to cover the new behavior. Mark\nlib1.so DF_1_GLOBAL and use a \"foo\" symbol to mimic the behavior of a\nsignal API interposed by (e.g.) libsigchain.so and a ASAN preload.\n\nTest: bionic unit tests\nBug: http://b/143219447\nChange-Id: I9fd90f6f0d14caf1aca6d414b3e9aab77deca3ff\n"
    },
    {
      "commit": "6a65ccdf5213cf3b9e80eba11ef8a0f40240272b",
      "tree": "1f667a8bdfb7d35fc014517e2724cb16486423d4",
      "parents": [
        "97d053283f4c100baed8677f7a7af98a976a2e2f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 13 09:48:14 2020 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 13 09:48:14 2020 -0800"
      },
      "message": "Remove mips test workarounds.\n\nThe mips/mips64 targets were never able to pass these tests, and the\nsupported architectures don\u0027t need any of these workarounds.\n\nTest: treehugger\nChange-Id: I640a8b7a98ae13d9d9cdb09b0fbef61d31d4c79a\n"
    },
    {
      "commit": "6dd1f587c8d354c011a51748c587d3fab55b1b50",
      "tree": "9dbf923ce484396c44e8db7cd1d733fa94962b2b",
      "parents": [
        "a2132f23b8056f00d46e67db03d257d4bce2881a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 28 12:18:35 2020 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jan 28 17:59:23 2020 -0800"
      },
      "message": "Test all four supported relocation encodings.\n\nTest (a) that we can load the library, but also (b) that readelf thinks\nit contains the relocation encoding we were expecting. Do this for all\nfour of RELR, ANDROID_RELR, relocation packer, and the original ELF\nrelocation encoding.\n\nBug: http://b/147452927\nTest: treehugger\nChange-Id: I5fab72f99d46991c1b206a1c15c76e185b7148b3\n"
    },
    {
      "commit": "75064c177fc11b032b4d68b60e6265f2c6c52d9b",
      "tree": "7606da424e6caeae2ab13eecf3097a385324711b",
      "parents": [
        "73e9f242ed07631798433df4e35f5f73443cb9f9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jan 22 20:46:12 2020 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jan 23 08:28:48 2020 -0800"
      },
      "message": "Initialize __progname correctly.\n\nsetprogname() does a basename, but we were initializing __progname\ndirectly. Stop doing that, and add some tests.\n\nTest: treehugger\nChange-Id: I06f306ade4161b2f0c7e314a3b1b30c9420117b7\n"
    },
    {
      "commit": "0f67214c50d8e63e80b6e36f3e8f34e66d1eeb3e",
      "tree": "116eca4718adda9fc9d432451bbd872c4a1f159a",
      "parents": [
        "55f9a24acc8d5243e1046b8e84818bfde7f061ba"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Dec 10 14:50:11 2019 -0800"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Dec 10 14:50:11 2019 -0800"
      },
      "message": "dl_test: update error message\n\nBug: http://b/145998177\nTest: atest CtsBionicTestCases on a non-debuggable, user build\nChange-Id: I052011f274edc331aa63fc6cd7666af2aebc2ad0\n"
    },
    {
      "commit": "55f9a24acc8d5243e1046b8e84818bfde7f061ba",
      "tree": "10a1e68f8840b9f385d92289cb024f7b1ed42217",
      "parents": [
        "27a8c60f045f939ab1cb7157313778966ed29404"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Dec 10 14:45:20 2019 -0800"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Dec 10 14:45:20 2019 -0800"
      },
      "message": "dl_test: use GTEST_SKIP() in a few places\n\nBug: none\nTest: bionic unit tests\nChange-Id: I40f42464359576ffbd55d0f56347c6c45daf73f9\n"
    },
    {
      "commit": "595c38184120e286670aa1ae60b6ae35c62147b7",
      "tree": "00e27a32e7a9059f1a59ac027fd76d7a28630888",
      "parents": [
        "1134b695bc3e8b7cdebf4d7d8238a58891a09045"
      ],
      "author": {
        "name": "Dmytro Chystiakov",
        "email": "dmytro.chystiakov@intel.com",
        "time": "Tue Oct 01 11:28:49 2019 -0700"
      },
      "committer": {
        "name": "Evgeny Eltsin",
        "email": "eaeltsin@google.com",
        "time": "Tue Nov 26 15:32:02 2019 +0100"
      },
      "message": "Fix linker path for emulated architecture\n\ndl#exec_linker* tests are failing on devices with emulated\narchitecture due to hardcoded path to linker.\n\nTest: bionic-unit-tests --gtest_filter\u003ddl.exec_linker*\nBug: b/141914915\n\nChange-Id: Id6d8d3ee7114e70b07e44034aa62dce0a3e0760e\nSigned-off-by: Dmytro Chystiakov \u003cdmytro.chystiakov@intel.com\u003e\n"
    },
    {
      "commit": "16269576668b4f3059c6f8f7a77d6a5d7ddf0e26",
      "tree": "56b842944f93e7845d2024765346156f334ec3b6",
      "parents": [
        "590bdbe6e938e1bc53b09674b7eedde440863f11"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Oct 29 13:41:00 2019 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Nov 05 13:45:54 2019 -0800"
      },
      "message": "linker: add more context to link failure error.\n\nThis change makes it easier to diagnose mistakes in linker\nconfiguration that result in a library being accidentally loaded in\nmultiple namespaces without its dependencies available everywhere.\n\nTest: manually tested the error message\nTest: bionic-unit-tests\nChange-Id: I03a20507f8fc902c2445a7fbbf59767ffffd5ebf\n"
    },
    {
      "commit": "bcaa454d32e1b4ccf92467bb263d627695ac9a5b",
      "tree": "65d7d4c493242ecb51bfe1796f133b32538de514",
      "parents": [
        "ff16c0b89b7297bc70353f60afac9bb93d6b0087"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 08 15:20:23 2019 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 10:26:39 2019 -0700"
      },
      "message": "bionic tests: use GTEST_SKIP.\n\nAlso be a bit more to the point in our messages, focusing on \"why\" not\n\"what\".\n\nTest: ran tests\nChange-Id: I297806c7a102bd52602dcd2fcf7a2cd34aba3a11\n"
    },
    {
      "commit": "7cc670637005e88e00be467c6c387112644a9209",
      "tree": "0141df753769639688cc216287be3f7f76d5cbdf",
      "parents": [
        "352853a53525ecb2a120dfa4e9aa03b3970df8ee"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Tue Feb 05 18:43:34 2019 -0800"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Wed Feb 06 13:59:16 2019 -0800"
      },
      "message": "Cleanup bionic tests with hwasan.\n\nThe tests were patched earlier to run with tagging heap allocator.\nThis change enables hwasan code instrumentation in the tests themselves,\nand fixes the issues that arise, mainly in the code that:\n* compares addresses of unrelated stack variables\n* compares address of a stack variable with stack limits as found in\n  /proc/self/maps\n* writes address of a stack variable to a hardware watchpoint register\netc.\n\nNote that static tests are broken at the moment, like all static\nbinaries. Dynamic tests pass 100% with this change.\n\nBug: 114279110, 124007027\nTest: SANITIZE_TARGET\u003dhwaddress; run dynamic bionic tests\n\nChange-Id: I68b8df9dd3e30b47734ddc083811a75a7f27deaa\n"
    },
    {
      "commit": "5a66490e3b9738cc70162257788bcc00583032fa",
      "tree": "3c284f55d4ce2f2af5745627bf271812082d3223",
      "parents": [
        "9cfca866ce36458bb942b7eebc4997f7bb94d3ad"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Nov 22 02:14:14 2018 -0800"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Dec 04 13:51:46 2018 -0800"
      },
      "message": "Use shared globals so getauxval works earlier\n\nMake getauxval() work in .preinit_array. It still won\u0027t be usable for\nifuncs unless we can guarantee that the __loader_shared_globals relocation\nis resolved before the ifunc calls [__bionic_]getauxval.\n\nDefine __bionic_getauxval for use in replacing calls to\nKernelArgumentBlock::getauxval, which doesn\u0027t (and sometimes isn\u0027t allowed\nto) access TLS variables like errno.\n\nBug: http://b/25751302\nTest: bionic unit tests\nChange-Id: I461feeaed7f43cfa2a2b6c34147194f0df82b516\nMerged-In: I461feeaed7f43cfa2a2b6c34147194f0df82b516\n(cherry picked from commit bdab4a2b97c53af0205788875342ec08e6901376)\n"
    },
    {
      "commit": "48b1159bb82b12bdd75be9228bd43db45168bdba",
      "tree": "876b546289ca58c6bb0a923c325aedeef7fd5cf8",
      "parents": [
        "7752bcb234a9960d2e9e89766d143b7ac0c5f332"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Thu Nov 22 02:41:36 2018 -0800"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Wed Nov 28 14:26:14 2018 -0800"
      },
      "message": "Use shared globals to init __progname + environ\n\nInitialize the __progname and environ global variables using\nlibc_shared_globals rather than KernelArgumentBlock.\n\nAlso: suppose the linker is invoked on an executable:\n\n    linker prog [args...]\n\nThe first argument passed to main() and constructor functions is \"prog\"\nrather than \"linker\". For consistency, this CL changes the BSD\n__progname global from \"linker\" to \"prog\".\n\nBug: none\nTest: bionic unit tests\nChange-Id: I376d76953c9436706dbc53911ef6585c1acc1c31\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": "6689b4f25883e06300df03850fa3a386b574f55a",
      "tree": "0b9e70ad0f34fa8399cd545452493a94e218dc74",
      "parents": [
        "aced2b25e64ba10d1e3aaff210ed5329189dc398",
        "01db9bde05ebec27813392d3642c1a784f0be9ab"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Nov 08 03:01:34 2018 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Nov 08 03:01:34 2018 +0000"
      },
      "message": "Merge \"Add a force fail for non-bionic xfail test.\""
    },
    {
      "commit": "01db9bde05ebec27813392d3642c1a784f0be9ab",
      "tree": "b1a81579b5b69b4a5a54e2558d590f127db9482b",
      "parents": [
        "0c39bd468d3aa19b3e27937b36b101cc4aa65dab"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Nov 07 14:39:43 2018 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Nov 07 14:39:43 2018 -0800"
      },
      "message": "Add a force fail for non-bionic xfail test.\n\nTest: xfail test passes on host.\nChange-Id: I6c4ddd3f3dc5541b126d9dd31b1fcff9d34819e6\n"
    },
    {
      "commit": "acd6f4f9f5d248345231542df91947b44a309c26",
      "tree": "56ebc05a9af0de40af4c624e722ca2e489d0c7f1",
      "parents": [
        "96bd339c51194bf56781ccc738fde8babd618fc6"
      ],
      "author": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Tue Nov 06 16:48:27 2018 -0800"
      },
      "committer": {
        "name": "Evgenii Stepanov",
        "email": "eugenis@google.com",
        "time": "Tue Nov 06 16:59:25 2018 -0800"
      },
      "message": "Disable a few bionic tests under HWASan.\n\n* HWASan report invalid use of the allocator api (like alignment not\nbeing power of two, or allocation size too large) in a way tests do not\nexpect.\n* Code in .preinit_array runs before HWASan shadow is initialized and\nneeds to be excluded from instrumentation.\n* It looks that mm system calls (mmap/mprotect/etc) will not allow\ntagged pointers. In fact, the use of mprotect on malloc()ed memory is\ndoubtful - one can imagine some kind of speculative load from such\nmemory, as compiler knows that it is addressable.\n\nBug: 114279110\nTest: bionic-unit-tests with hwasan\n\nChange-Id: I6ba4b46a0d554de77c923ad134cf156ce4ddba1b\n"
    },
    {
      "commit": "8f639a40966c630c64166d2657da3ee641303194",
      "tree": "96e03d65a4efa6613941b748ed2c11b64a8dec1b",
      "parents": [
        "cb8ed207d2bb6113a80fc7f27cd0beb8897f5192"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Mon Oct 01 23:10:05 2018 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Wed Oct 10 14:31:06 2018 -0700"
      },
      "message": "Allow invoking the linker on an executable.\n\nThe executable can be inside a zip file using the same syntax used for\nshared objects: path.zip!/libentry.so.\n\nThe linker currently requires an absolute path. This restriction could be\nloosened, but it didn\u0027t seem important? If it allowed non-absolute paths,\nwe\u0027d need to decide how to handle:\n - foo/bar      (relative to CWD?)\n - foo          (search PATH / LD_LIBRARY_PATH, or also relative to CWD?)\n - foo.zip!/bar (normalize_path() requires an absolute path)\n\nThe linker adjusts the argc/argv passed to main() and to constructor\nfunctions to hide the initial linker argument, but doesn\u0027t adjust the auxv\nvector or files like /proc/self/{exe,cmdline,auxv,stat}. Those files will\nreport that the kernel loaded the linker as an executable.\n\nI think the linker_logger.cpp change guarding against (g_argv \u003d\u003d NULL)\nisn\u0027t actually necessary, but it seemed like a good idea given that I\u0027m\ndelaying initialization of g_argv until after C++ constructors have run.\n\nBug: http://b/112050209\nTest: bionic unit tests\nChange-Id: I846faf98b16fd34218946f6167e8b451897debe5\n"
    },
    {
      "commit": "6d2c0bdf6e17cddb8568bbcac375d63f009f1575",
      "tree": "a7565b242dc519751ee6feebb9b2bf643fb07004",
      "parents": [
        "f3ff8dc6f42583ca179cf87919a0aa15597b942b"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Aug 21 18:13:10 2018 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Sep 27 22:22:17 2018 -0700"
      },
      "message": "Move isolated test runner out of bionic.\n\nUse a global gtest isolation runner rather than the custom one in\nbionic.\n\nTest: Ran all unit tests and verified same behavior before and after.\n\nChange-Id: I24a7cf17cf8e018d0f51969c64b53ce9059cc779\n"
    },
    {
      "commit": "1280cf5fd8147f4c52a758bdc3fdfacff17b0552",
      "tree": "461cf34d6fd9862decae799633f0f43ab163e910",
      "parents": [
        "775fb0962173f07aeb46c8ae764a35a85e00a3f0"
      ],
      "author": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Wed May 09 14:37:47 2018 +0200"
      },
      "committer": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Wed May 09 14:37:47 2018 +0200"
      },
      "message": "Unhardcode /system/lib\n\nDefault search path may be different for native bridged enviroments\n\nBug: http://b/73105445\nTest: adb shell /data/nativetest/arm/bionic-unit-tests/bionic-unit-tests --gtest_filter\u003ddl.exec_with_ld_config_file\nChange-Id: I09d32dcb8a7a3f161ccc6d58c29252e79ea5fd3e\n"
    },
    {
      "commit": "0044cd188e738c863da4e9cb44687623436890d7",
      "tree": "7ff6ac6762fe1b86deb1a9c071ba579234f7b8a2",
      "parents": [
        "8b70a0266d42297e9b38e6209588eb3621843e95"
      ],
      "author": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Tue Apr 03 20:03:12 2018 -0700"
      },
      "committer": {
        "name": "Ryan Prichard",
        "email": "rprichard@google.com",
        "time": "Wed Apr 04 16:10:37 2018 -0700"
      },
      "message": "Fix race in ld.config.txt tests\n\nThe tests can run in parallel, and if they do, one test can truncate\nld.config.txt while another test is reading it (via the loader). Fix the\nissue by using a TemporaryFile as the LD_CONFIG_FILE.\n\nTest: adb shell /data/nativetest64/bionic-unit-tests/bionic-unit-tests  --gtest_filter\u003ddl.exec_with_ld_config_file:dl.exec_with_ld_config_file_with_ld_preload:dl.disable_ld_config_file --gtest_repeat\u003d1000\nBug: b/77555708\nChange-Id: I9763caa076ece30d1a0eb9c8892a310ac51543b6\n(cherry picked from commit 6c3f97d2360ba1a2b2be160003fa3b4dd7b33ae1)\n"
    },
    {
      "commit": "9828386bd4857c438f206c1770087f93385cea39",
      "tree": "8490a196e61d2d161daa349898ff9a2cbcffb3d7",
      "parents": [
        "b7d6df2b61f7941e24d362105a43950da6f2da05"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Nov 28 13:37:03 2017 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Nov 28 13:37:03 2017 +0900"
      },
      "message": "Fix: dl#disable_ld_config_file\n\nlinker now quits with exit(1) instead of abort().\nThis is a leftover of\nhttps://android-review.googlesource.com/c/platform/bionic/+/497893\n\nBug: 69635156\nTest: run dl#disable_ld_config_file in a user build\nChange-Id: If65c50805ffe89a601f4a9bfc1c6f0bb8dc16b77\n"
    },
    {
      "commit": "59d3062f51abf11d1a681511eb51da87bb2d71c9",
      "tree": "f82bb4c51023ba02ee06cdd7d18674cca38519ac",
      "parents": [
        "a08f704e2a35aaa1173c762db037caa8aa166ba8"
      ],
      "author": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Wed Oct 18 13:23:08 2017 +0200"
      },
      "committer": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Wed Oct 18 13:23:08 2017 +0200"
      },
      "message": "Use ro.debuggable property instead of checking build type\n\nTest: make\nChange-Id: I094663c20721f345cd6684e06fcef38f300790be\n"
    },
    {
      "commit": "41704cdf615eab4318539da0f0c03f443d2d89c7",
      "tree": "49bc8590a6928047b99f9e2fc859a4fedb63e253",
      "parents": [
        "48fbf91672d096bdec664374d16d65488b77251c"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Tue Sep 19 09:48:07 2017 +0900"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Oct 03 15:03:44 2017 -0700"
      },
      "message": "Don\u0027t run exec_with_ld_config_file* tests on non-production devices\n\nThe tests that use LD_CONFIG_FILE environment variable shouldn\u0027t be run\non non-production devices because LD_CONFIG_FILE is only for debuggable\nbuilds. We have used the build-time flag USE_LD_CONFIG_FILE, which is\nset for the debuggable builds, to conditionally include or exclude the\ntests. However, this can be a problem when 1) the device is not\ndebuggable but 2) the CTS itself is built with debuggable target. So,\ninstead of relying on the build-time flag USE_LD_CONFIG_FILE, the tests\nnow check the debuggability of the device and skip the tests when it\nisn\u0027t debuggable.\n\nBug: 65842135\nTest: 1) flash user build image to a 2017 pixel device.\n2) build cts with \u0027userdebug\u0027 build target\n3) CtsBionicTestCases pass on the device\n\n(cherrypick of 5e3d44100be32fd5efffd0c309bd90c04cc9620c.)\n\nChange-Id: Ib88e3b26d093e5479d52cd87db47dee5e108cac2\n"
    },
    {
      "commit": "04f7a798cff26c1809138d329e0a5717efc2b3c5",
      "tree": "314d022f48abb92d9fd690b07c205c15b791ab7a",
      "parents": [
        "bd2754177fc26b255b64af0b50c32f984a274cf9"
      ],
      "author": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Fri Sep 29 11:52:17 2017 +0200"
      },
      "committer": {
        "name": "dimitry",
        "email": "dimitry@google.com",
        "time": "Fri Sep 29 19:48:46 2017 +0200"
      },
      "message": "Replace abort with exit(1) in __linker_cannot_link\n\nBug: http://b/67038409\nTest: bionic-unit-tests\nChange-Id: I7d39b44f2da8c5111ac8a9faf3416f19d5a35c05\n"
    },
    {
      "commit": "4945d8f121ff0f7bec857bd5664d79bc20c270ad",
      "tree": "ea13d76732ee0e512793c1429842b7f86ecd601b",
      "parents": [
        "352afd0e932ee28bce48baf0d8b38ab3d149162d"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Wed Aug 30 11:30:53 2017 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Aug 31 01:42:55 2017 +0900"
      },
      "message": "Don\u0027t run disable_ld_config_file test on non-production devices\n\nThe test always fails when run on non-production devices. Silence the\nexpected failure.\n\nBug: 64908138\nTest: run CtsBionicTestCases on userdebug device. disable_ld_config_file\ntest does not fail.\n\nMerged-In: Icd24a356dfbc62f540e3263070434a4fd065bfbc\nChange-Id: Icd24a356dfbc62f540e3263070434a4fd065bfbc\n(cherry picked from commit 157655dc6785923740e334478c4e2f1a392bade4)\n"
    },
    {
      "commit": "02586a2a34e6acfccf359b94db840f422b6c0231",
      "tree": "9dde1a2bcf8a004b23fe41b9f3e497895d44e44d",
      "parents": [
        "5ac5a7c0839a123c2982b37b383a7691fd216e7e"
      ],
      "author": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Sat May 20 01:01:24 2017 +0900"
      },
      "committer": {
        "name": "Jiyong Park",
        "email": "jiyong@google.com",
        "time": "Thu Aug 03 01:02:07 2017 +0900"
      },
      "message": "linker: the global group is added to all built-in namespaces\n\nWith ld.config.txt, we now have multiple built-in namespaces other than\nthe default namespace. Libs (and their dependents) listed in LD_PRELOAD\nmust be visible to those additional namespaces as well.\n\nThis also adds a debugging only feature: path to the linker config file\ncan be customized via LD_CONFIG_FILE environment variable. This works\nonly for debuggable builds.\n\nBug: 38114603\nBug: 62815515\nTest: 1. ./external/compiler-rt/lib/asan/scripts/asan_device_setup --lib\nprebuilts/clang/host/linux-x86/clang-stable/lib64/clang/5.0/lib/linux\n2. enable talkback shortcut\n3. in the home screen, hold vol-up/down together\n4. device does not reboots and talkback shortcut is toggled\nTest: bionic-unit-tests and linker-unit-tests successful\n\nChange-Id: I9a03591053f4a9caea82f0dcb23e7a3d324bb9bd\n"
    },
    {
      "commit": "eb04ed506fbb0561b677d9518c9bae33f0262b03",
      "tree": "11c004e500d83117298b0520973aab9188911af4",
      "parents": [
        "9cb82a2c6b9001f7c50cbb3465f4aabc5d7cd055"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 29 13:48:02 2017 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 29 13:48:02 2017 -0700"
      },
      "message": "Fix x86 system calls made from ELF preinit.\n\nUsed by CFI, so broke cfi_test#early_init@x86, but I\u0027ve added a specific\ntest for this (and a similar test for getauxval from preinit, which this\npatch does not fix).\n\nBug: http://b/35885875\nTest: ran tests\nChange-Id: I43885bedfb88c0a26b4474bd3c27a87dec7bbc97\n"
    },
    {
      "commit": "2a6955e040f24b31a2dfe829f47e35ac91733489",
      "tree": "e91c30cf688ab2fd0d55546042d3496f489db7de",
      "parents": [
        "5927b04ce7d9d4727a4a644f8af4040b8dab5d0a"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Feb 23 11:53:43 2017 -0800"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Feb 24 16:56:38 2017 -0800"
      },
      "message": "loader: set PT_INTERP to itself\n\nSome versions of kernel set AT_BASE to 0\nif dynamic loader does not have PT_INTERP\nset.\n\nBug: http://b/30739481\nTest: run /system/bin/linker64 and /system/bin/linker\nChange-Id: I1b67777166fe917d3ee1a97277045ca6f5db0084\n"
    },
    {
      "commit": "0416d88f9c90dcb1b97947a27a7c05f3627484c4",
      "tree": "20bdbf853cdae990cc2d77aff109449d1336aa2a",
      "parents": [
        "1c095774c0527027bf3f7013ba15e9913d5f1853"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Nov 04 09:38:18 2014 -0800"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Nov 04 09:38:18 2014 -0800"
      },
      "message": "Revert \"Revert \"Fix symbol lookup order during relocation\"\"\n\nThis reverts commit f947be2889639defc6424b1813ccc779528b7598.\n"
    },
    {
      "commit": "f947be2889639defc6424b1813ccc779528b7598",
      "tree": "a4e2df0805ec9b33aec2ad494678415ce0ec835f",
      "parents": [
        "494bee796aa60131981308493e0e295493537e12"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Nov 03 21:14:07 2014 -0800"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Nov 03 22:15:08 2014 -0800"
      },
      "message": "Revert \"Fix symbol lookup order during relocation\"\n\nThis reverts commit 976402cca13a1f4f3aa988fd301575e134ef5f2c.\n\nBug: 18222321\nBug: 18211780\nChange-Id: Iafdd3d843db7b1cf288be9a0232022816622c944\n"
    },
    {
      "commit": "976402cca13a1f4f3aa988fd301575e134ef5f2c",
      "tree": "96d5ca98af5d4638b03541afc5e40d1f888516c0",
      "parents": [
        "bf3d5ef5fd240d4c5fbde1b32f9084dbc720840b"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Aug 28 14:12:12 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Oct 31 17:10:30 2014 -0700"
      },
      "message": "Fix symbol lookup order during relocation\n\n  Relocate symbol against DF_1_GLOBAL shared libraries\n  loaded before this shared library. This includes\n  main executable, ld_preloads and other libraries\n  that have DF_1_GLOBAL flag set.\n\nBug: 2643900\nBug: 15432753\nBug: 18186310\n\n(cherry picked from commit d225a5e65223b375a63548c4b780f04d8f3d7b60)\n\nChange-Id: I4e889cdf2dfbf8230b0790053d311ee6b0d0ee2d\n"
    }
  ]
}
