)]}'
{
  "log": [
    {
      "commit": "b7ed28c9214aa531248e82f25357085cfd117869",
      "tree": "4b34665059f76eec7603b863ca908daab736bb8c",
      "parents": [
        "b00fb603216cb3d3fc5f2413af6b8f385a1612da",
        "1ce442f9096e4aa947e12077de4041350a45845e"
      ],
      "author": {
        "name": "Sally Qi",
        "email": "sallyqi@google.com",
        "time": "Tue Aug 22 01:11:39 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Aug 22 01:11:39 2023 +0000"
      },
      "message": "Merge \"Fix bt2020 linear ext mapping issue in EGL and Vulkan.\" into main am: d6bfad2e5c am: 1ce442f909\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2719664\n\nChange-Id: Ife0f4fb96e18a72a4884a1422931347aa017baad\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "03a1a752a31ecc1432e259f5d6c7c70c68ba533e",
      "tree": "78197fbb93936c044db77dd886a270f469ec4006",
      "parents": [
        "4e9661b50d580e3f35abf2b7d73c3b4d92029f65"
      ],
      "author": {
        "name": "Sally Qi",
        "email": "sallyqi@google.com",
        "time": "Mon Jul 17 12:52:05 2023 +0800"
      },
      "committer": {
        "name": "Sally Qi",
        "email": "sallyqi@google.com",
        "time": "Mon Aug 21 22:20:39 2023 +0000"
      },
      "message": "Fix bt2020 linear ext mapping issue in EGL and Vulkan.\n\n - EGL_EXT_BT2020_LINEAR should be mapped to extend bt2020 linear if\n   output format is FP16.\n\nBug: 261485283\nTest: builds\nChange-Id: Ifd68cc10afc0b5b38b15af2a938d02bb3bcd3764\nMerged-In: Ifd68cc10afc0b5b38b15af2a938d02bb3bcd3764\n"
    },
    {
      "commit": "48a5ea729379c465fee8745c9d23ceb59af1b1e8",
      "tree": "26add2386537790ff6936546bee404f945893a95",
      "parents": [
        "5a42361de86faba4469ecdb79d60de957403251d",
        "704ade2ba7ec2f546b5b4757a441bd534d658005"
      ],
      "author": {
        "name": "Chris Glover",
        "email": "chrisglover@google.com",
        "time": "Thu Jun 22 11:49:56 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Jun 22 11:49:56 2023 +0000"
      },
      "message": "Update EGL_GL_COLORSPACE_BT2020_HLG_EXT to the correct value am: 704ade2ba7\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/23516798\n\nChange-Id: I6a732b69ff2c44c72255a97a4a49c1475ac00606\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "704ade2ba7ec2f546b5b4757a441bd534d658005",
      "tree": "e0a59186d522c226279ccf23a69e0ec8f802221c",
      "parents": [
        "1db43995a5e1cda14aaa1079bbcd39a1c8ccb8fc"
      ],
      "author": {
        "name": "Chris Glover",
        "email": "chrisglover@google.com",
        "time": "Fri Jun 02 09:04:50 2023 +0100"
      },
      "committer": {
        "name": "Chris Glover",
        "email": "chrisglover@google.com",
        "time": "Wed Jun 21 10:18:45 2023 +0000"
      },
      "message": "Update EGL_GL_COLORSPACE_BT2020_HLG_EXT to the correct value\n\nag/22764137 added support for HLG formats, but the spec change in\nthe Khronos gitlab hadn\u0027t landed yet. The enum I used had already been\nused by an unpublished NVIDIA EXT, so I needed to choose a different\none. This change uses the new one which is the final correct enum found here:\n\nhttps://github.com/KhronosGroup/EGL-Registry/commit/526f9a6471106090e44b8d6a123f78886d5d88fa\n\nBug: 277210442\nTest: Manually ran new test in CL https://gerrit.khronos.org/c/vk-gl-cts/+/11608\nChange-Id: I5c163b7ef2c3e6fa6f90ac8de6f75a7b7e67cf8c\n"
    },
    {
      "commit": "5c703e7c520161b3ca645d9cea90cd50b26ca392",
      "tree": "8709ff947e3bbd2389c6d85fe395e56be6aed087",
      "parents": [
        "2e2a114d4a1256cea0604d7ef02cd215c4d90117"
      ],
      "author": {
        "name": "Yuxin Hu",
        "email": "yuxinhu@google.com",
        "time": "Thu May 25 22:46:13 2023 +0000"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Sun May 28 16:35:48 2023 +0000"
      },
      "message": "Fix the missing extension EGL_ANDROID_image_native_buffer\n\nIn http://ag/22040002, EGL_ANDROID_get_frame_timestamps\nis conditionally added to the mExtensionString. A space\nat the end of the extension name is mandatory, because\nwe use \u0027 \u0027 or \u0027\\0\u0027 as an indicator when parsing the\nmExtensionString to find each individual extension name.\n\nBug: b/269060366\nBug: b/280016556\nTest: m; atest android.hardware.nativehardware.cts.AHardwareBufferNativeTests\nChange-Id: I2552b47dda49a09218a7741c45641c02bdd807ee\nMerged-In: I2552b47dda49a09218a7741c45641c02bdd807ee\n"
    },
    {
      "commit": "c034b3a9bc122e4df4f5ebadf45c585612ef80d3",
      "tree": "d8b0ef850064c60fdc44e7eda1bc40b4b52c0c39",
      "parents": [
        "855810c4e9c2e03d025d47f75ba199586af791d5"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Wed Apr 05 20:09:16 2023 +0000"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu May 18 15:45:53 2023 +0000"
      },
      "message": "Do not allow wildcard matching in GL loader.\n\nPreviously when ro.hardware.egl and ro.board.platform were not set, the\nloader would attempt to load the exact GLES drivers, and if it failed,\nit would attempt to use wildcard matching to find the GLES drivers.\n\nHowever, ro.hardware.egl must be set to point to the GLES drivers and\nhence wildcard matching should be disallowed. This patch makes sure the\nGL loader no longer uses that path if a device is launched in Android 14\nand beyond.\n\nBug: b/277100371\nTest: boot\nTest: atest CtsAngleIntegrationHostTestCases\nChange-Id: Ie9221ba37947c7462de8321819543a4c67979f67\n"
    },
    {
      "commit": "814251d8444b2f381323cda9f093654bd765605c",
      "tree": "f1a2bf957a003fd3229026e91a04086a2b89f3af",
      "parents": [
        "ac4a96a3ef7842dc34d8bb1a0377119f7320d591",
        "85b26eb444a954155a631763b77d4e1ad108f006"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue May 09 05:34:08 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 09 05:34:08 2023 +0000"
      },
      "message": "Merge \"Fix the missing extension EGL_ANDROID_image_native_buffer\" into udc-dev am: 85b26eb444\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/23087461\n\nChange-Id: I5f839bcd9465e8c4a6bdea59e0b2dab2c6f673c7\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "85b26eb444a954155a631763b77d4e1ad108f006",
      "tree": "da34d7b56402d751fc74a5895f44884d0e5e47a6",
      "parents": [
        "9560a12c9524c6929fbfb8986ca779d4de282ddb",
        "0bc64a80291111ad9356377e7247acdf77325e75"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Tue May 09 02:33:47 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 09 02:33:47 2023 +0000"
      },
      "message": "Merge \"Fix the missing extension EGL_ANDROID_image_native_buffer\" into udc-dev"
    },
    {
      "commit": "0bc64a80291111ad9356377e7247acdf77325e75",
      "tree": "141376861ab10c7e1876098c2ea9da79301635a6",
      "parents": [
        "b69e9884fc1707141b21dbe1b67214e956e6f4a7"
      ],
      "author": {
        "name": "Yuxin Hu",
        "email": "yuxinhu@google.com",
        "time": "Mon May 08 23:48:42 2023 +0000"
      },
      "committer": {
        "name": "Yuxin Hu",
        "email": "yuxinhu@google.com",
        "time": "Mon May 08 23:48:42 2023 +0000"
      },
      "message": "Fix the missing extension EGL_ANDROID_image_native_buffer\n\nIn http://ag/22040002, EGL_ANDROID_get_frame_timestamps\nis conditionally added to the mExtensionString. A space\nat the end of the extension name is mandatory, because\nwe use \u0027 \u0027 or \u0027\\0\u0027 as an indicator when parsing the\nmExtensionString to find each individual extension name.\n\nBug: b/269060366\nBug: b/280016556\nTest: m; atest android.hardware.nativehardware.cts.AHardwareBufferNativeTests\nChange-Id: Ie8ddc3018c37d77167b95210d89c7e7f7e6e69e7\n"
    },
    {
      "commit": "0c4dfca21aa38e344a1dd5cbf1e914df8e6677a1",
      "tree": "dbe81e0a5e08e955db399496637fb47336ca849d",
      "parents": [
        "3607864e814d284468eb484ce51eadc98c195f96",
        "b1e4e9fba5b211ffc9abc62cd80570e81ec2a73a"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Fri May 05 17:04:29 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 05 17:04:29 2023 +0000"
      },
      "message": "Merge \"Refactor ANGLE usage code.\" into udc-dev am: b1e4e9fba5\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/22557619\n\nChange-Id: I5d458fd54520f1460857662680fcc6a9734fcda0\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "d07b2188707875e0efcf95a55e8043250ca875bb",
      "tree": "982f2f8ae6d20fe94689696337071a6dec2496fe",
      "parents": [
        "089618b74ec19936a23157cfa7938c887f9546d0",
        "b44bbf6e42284b39b0819fffd5e37673531f8b3b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "android-test-infra-autosubmit@system.gserviceaccount.com",
        "time": "Fri Apr 28 13:16:54 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Apr 28 13:16:54 2023 +0000"
      },
      "message": "Merge \"opengl: fix resource leak when dlsym failed\" am: 67a74f49c5 am: 40d90240f9 am: b44bbf6e42\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2561130\n\nChange-Id: I0f3c74d8b4776b0ed8efa0032393118a7bf1b43a\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9679a98e2845d9317672cec811a0c698e74fdf73",
      "tree": "abab3e1aebd2f0ea195cd189799568b5e74bd022",
      "parents": [
        "1861463bbe348b8b53b106f906f6d98a581761c7"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Mon Apr 10 22:00:30 2023 +0000"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Fri Apr 28 07:55:23 2023 +0000"
      },
      "message": "Refactor ANGLE usage code.\n\nPreviously when ANGLE is the default system driver, the ro.hardware.egl\npoints to ANGLE. This is fine if ANGLE is the only system drvier.\nHowever, we would like to make ANGLE coexist with the native GLES\ndrivers and allow a global switch. Hence this patch refactors the\nmajority of the ANGLE selection logic. Loading ANGLE in the form of an\napk as well as using ANGLE as a game mode intervention should remain\nfunctional.\n\nBug: b/270994705\nTest: atest CtsAngleIntegrationHostTestCases\nChange-Id: I31a6a5dda04a1ffaeed101e58368ad4b4ad0d54e\n"
    },
    {
      "commit": "3d0d3e99c0335b94fa41fafce6d0fb3fedb07f75",
      "tree": "742790e65694b26c5c2fc16f22660459c81dbfd6",
      "parents": [
        "16c6483792eba0bd3ea334a655ed5f49ca847f20"
      ],
      "author": {
        "name": "zhangjincheng",
        "email": "zhangjincheng@xiaomi.com",
        "time": "Tue Apr 25 15:41:04 2023 +0800"
      },
      "committer": {
        "name": "jincheng zhang",
        "email": "zhangjincheng@xiaomi.com",
        "time": "Fri Apr 28 06:35:48 2023 +0000"
      },
      "message": "opengl: fix resource leak when dlsym failed\n\nBug: 280001152\nTest: coverity test\nChange-Id: Id189b304e791ec60c2661f941b0f0d480cf15227\nSigned-off-by: zhangjincheng \u003czhangjincheng@xiaomi.com\u003e\n"
    },
    {
      "commit": "bcbfe602cce7406bdf66b3d3b2043856eb866c91",
      "tree": "bf848c31e2afcc2e7b2e30d4c526c4b0e8f432e9",
      "parents": [
        "a8827e9c7abb0923f9b7a1de381545ddd2396bc4"
      ],
      "author": {
        "name": "Yiwei Zhang",
        "email": "zzyiwei@google.com",
        "time": "Sat Apr 22 04:43:33 2023 +0000"
      },
      "committer": {
        "name": "Yiwei Zhang",
        "email": "zzyiwei@google.com",
        "time": "Sun Apr 23 04:46:20 2023 +0000"
      },
      "message": "Add blob cache related tracepoints\n\nGenerally useful for getting a sense of blob cache init, cache ejection,\ncache flush operations.\n\nBug: 277861132\nTest: build and take traces\nChange-Id: I8b1d7beab27845856c13ab8088a3a702553e51b0\n"
    },
    {
      "commit": "9f746f631d3608cabbc749bd06dcccf4e6949126",
      "tree": "96bed927dfe61e0c6a8dc0404f30bcbdc3877a69",
      "parents": [
        "8e521bbbfe86abb0ab6191f3ccbf6aa448a4c0e1"
      ],
      "author": {
        "name": "Chris Glover",
        "email": "chrisglover@google.com",
        "time": "Thu Apr 20 10:23:22 2023 +0100"
      },
      "committer": {
        "name": "Chris Glover",
        "email": "chrisglover@google.com",
        "time": "Thu Apr 20 15:48:45 2023 +0000"
      },
      "message": "Add support for EGL_EXT_gl_colorspace_bt2020_hlg to libEGL\n\nThis implements EGL_EXT_gl_colorspace_bt2020_hlg in terms of HAL\ndata formats such that applications can create HLG encoded surfaces. As\nper the spec, applications need to ensure correct HLG encoding, which\nmade it possible to implement this extension without involving the\ndriver.\n\nThe change includes a manual update of eglext.h because the spec\nis not yet ready.\nhttps://github.com/KhronosGroup/EGL-Registry/pull/177\n\nTest: Manually ran tests implemented in dEQP in a separate change\nhttps://gerrit.khronos.org/c/vk-gl-cts/+/11608\n\nBug: 277210442\n\nChange-Id: I3e011a786930d978fbc0d86aad29d25e4cdcc148\n(cherry picked from commit 82396e8990bdffde91b9249a4edbeb03b3e73819)\nMerged-In: I3e011a786930d978fbc0d86aad29d25e4cdcc148\n"
    },
    {
      "commit": "98db8e0c2301035c79a440b7cc5e18b318362319",
      "tree": "e39fd37aec32ceb88d030b1901c53e41bb251970",
      "parents": [
        "1f428c8affd9ca3951b01e88cb93545f109f78f3"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Wed Apr 05 20:09:16 2023 +0000"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu Apr 06 17:23:54 2023 +0000"
      },
      "message": "Do not allow wildcard matching in GL loader.\n\nPreviously when ro.hardware.egl and ro.board.platform were not set, the\nloader would attempt to load the exact GLES drivers, and if it failed,\nit would attempt to use wildcard matching to find the GLES drivers.\n\nHowever, ro.hardware.egl must be set to point to the GLES drivers and\nhence wildcard matching should be disallowed. This patch makes sure the\nGL loader no longer uses that path if a device is launched in Android 14\nand beyond.\n\nBug: b/277100371\nTest: boot\nTest: atest CtsAngleIntegrationHostTestCases\nChange-Id: Ie9221ba37947c7462de8321819543a4c67979f67\n"
    },
    {
      "commit": "45ce680a26ef4844370d4ca87dba25c7d2da19dd",
      "tree": "08a78a1e25a4c2b09fad05921dd1aeb1f7e3d8ea",
      "parents": [
        "5dbcfa78580895cb6361bbd1a1853e291b982d5e"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Thu Mar 23 11:07:09 2023 -0600"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Apr 03 15:05:48 2023 -0600"
      },
      "message": "EGL BlobCache: Add fuzzer for multifile\n\nThis fuzzer breaks up the incoming data buffer into\na key and value, then invokes the cache in a few\ndifferent ways.\n\nAlso includes one small fix to delete a buffer,\ndiscovered while writing the test.\n\nTest: /data/fuzz/arm64/MultifileBlobCache_fuzzer/MultifileBlobCache_fuzzer\nBug: b/261868299\nChange-Id: I724584ddb5a92b4b33e371f22f4511cdeb965775\n"
    },
    {
      "commit": "5dbcfa78580895cb6361bbd1a1853e291b982d5e",
      "tree": "e367d65e3b6fab4aca45f6e786080c1dc950cd47",
      "parents": [
        "f2588a8172a8481e4989924098eafa08a145b5c1"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Fri Mar 24 15:34:09 2023 -0600"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Apr 03 15:05:48 2023 -0600"
      },
      "message": "EGL BlobCache: Update multifile key and value size\n\nMake it clearer what the key and value size limits are.\nBase the hot cache on those values, rather than the\nother way around.\n\nTest: pubg_mobile_launch ANGLE trace\nTest: /data/nativetest64/EGL_test/EGL_test\nTest: /data/nativetest64/libEGL_test/libEGL_test\nBug: b/266725576\nChange-Id: I337beaf0e01c6497f619c29c01f94242c7b5c959\n"
    },
    {
      "commit": "f2588a8172a8481e4989924098eafa08a145b5c1",
      "tree": "3eca8330e2d880e2fb1bf1d5959f56739350870a",
      "parents": [
        "be16373f15a245b4c14ad4f84b20ff8e76741893"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Mar 27 23:03:49 2023 -0600"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Apr 03 15:05:48 2023 -0600"
      },
      "message": "EGL BlobCache: Trim immediately on multifile overflow\n\nWhile adding a fuzzer for this feature, discovered that\ncache trimming wasn\u0027t happening right when the overflow\nhappened, but on the next iteration.\n\nThis CL updates the code to make it trim right away, since\nwe\u0027ve already determined it needs to happen.\n\nAlso add a test to ensure trimming happens right away.\n\nTest: /data/nativetest64/EGL_test/EGL_test\nBug: b/266725576\nChange-Id: Ica1e9ca688268e7e746750c27acdfced04e74b06\n"
    },
    {
      "commit": "be16373f15a245b4c14ad4f84b20ff8e76741893",
      "tree": "62183918fca14fb4eaf5e63b19bc196aefc711f1",
      "parents": [
        "999db23368617262e4c548ed743fa516d17682d4"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Wed Mar 22 10:14:26 2023 -0600"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Apr 03 15:05:48 2023 -0600"
      },
      "message": "EGL BlobCache: Synchronize access to deferred write status\n\nProtect access to mDeferredWrites with a mutex. It is updated\nby the worker thread upon completion.\n\nTest: pubg_mobile_launch ANGLE trace\nTest: /data/nativetest64/EGL_test/EGL_test\nTest: /data/nativetest64/libEGL_test/libEGL_test\nBug: b/271975248\nChange-Id: Id278f4677a72f2d981a9400ee871bdcc1b0168ef\n"
    },
    {
      "commit": "999db23368617262e4c548ed743fa516d17682d4",
      "tree": "00b2483dd54a6fa5b90cf47e32f45173d4f9a2a9",
      "parents": [
        "3d1609e677c2ab9aba10b8d21415a51333c2c159"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Feb 27 17:02:50 2023 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Apr 03 10:37:15 2023 -0600"
      },
      "message": "EGL BlobCache: Add CRC check to multifile\n\nApply a CRC check during file write, ensuring it is\nthe last thing applied to the file.\n\nDuring initialization, verify the contents of the file\nand remove if CRC doesn\u0027t match.\n\nAdd a new test (ModifiedCacheEndMisses) that modifies\nthe end of the entry and ensures no cache hit.\n\nTest: pubg_mobile_launch ANGLE trace\nTest: /data/nativetest64/EGL_test/EGL_test\nTest: /data/nativetest64/libEGL_test/libEGL_test\nBug: b/267629017\nChange-Id: I54015548b509c9ef2440e80f35b5ec97820a2144\n"
    },
    {
      "commit": "0368675d3b112c77ac42e975e9087bdb6144c65f",
      "tree": "70649bae92eac3694c8ce0150376f597433f00a2",
      "parents": [
        "19ce0cba3e17c1a1ad4979d73a520872f0db4e04"
      ],
      "author": {
        "name": "Yuxin Hu",
        "email": "yuxinhu@google.com",
        "time": "Tue Mar 14 01:43:05 2023 +0000"
      },
      "committer": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Thu Mar 16 15:26:41 2023 -0700"
      },
      "message": "Conditionally expose EGL_ANDROID_get_frame_timestamps extension\n\nExpose EGL_ANDROID_get_frame_timestamps extension\nif service.sf.present_timestamp sysprop is true, and\nwe use ANGLE egl.\n\nOn cuttlefish we disabled service.sf.present_timestamp,\nthis further disables VK_GOOGLE_display_timing extension.\nANGLE\u0027s eglSurfaceAttrib(EGL_TIMESTAMPS_ANDROID) requires\nboth EGL_ANDROID_get_frame_timestamps and\nVK_GOOGLE_display_timing extension to work:\nhttps://chromium-review.googlesource.com/c/angle/angle/+/3753396.\nAndroid EGL Wrapper\u0027s eglSurfaceAttrib() implementation\nforwards the call to ANGLE. Therefore, we need to make ANGLE\nand Android EGL Wrapper report consistent results:\nonly expose EGL_ANDROID_get_frame_timestamps in Android\nEGL Wrapper if service.sf.present_timestamp sysprop is true.\nThat way we won\u0027t have Android EGL Wrapper claiming the\nEGL_ANDROID_get_frame_timestamps extension\nis supported first, but then the subsequent call of\neglSurfaceAttrib(EGL_TIMESTAMPS_ANDROID) to ANGLE fails.\n\nBug: b/269060366\nTest: m;\ncts-tradefed run commandAndExit cts\n-m CtsDeqpTestCases --abi x86 --skip-preconditions\n--skip-all-system-status-check --module-arg\n\u0027CtsDeqpTestCases:deqp-use-angle:vulkan\u0027\n--module-arg\n\u0027CtsDeqpTestCases:include-filter:dEQP-EGL.functional.get_frame_timestamps*\u0027;\n\nChange-Id: Id96d0c749c80ba54aa1e48dba85817efab8b7eea\nMerged-In: Id96d0c749c80ba54aa1e48dba85817efab8b7eea\n"
    },
    {
      "commit": "7fee44112b0c71686d69c6de1833760d224acd6e",
      "tree": "f5c8ff656d435dc4ca3292c67a9d58c3e6e80f15",
      "parents": [
        "849d782248b8c24fb538c84defc5b5d8f2a48bac"
      ],
      "author": {
        "name": "Yuxin Hu",
        "email": "yuxinhu@google.com",
        "time": "Tue Mar 14 01:43:05 2023 +0000"
      },
      "committer": {
        "name": "Yuxin Hu",
        "email": "yuxinhu@google.com",
        "time": "Tue Mar 14 18:36:03 2023 +0000"
      },
      "message": "Conditionally expose EGL_ANDROID_get_frame_timestamps extension\n\nExpose EGL_ANDROID_get_frame_timestamps extension\nif service.sf.present_timestamp sysprop is true, and\nwe use ANGLE egl.\n\nOn cuttlefish we disabled service.sf.present_timestamp,\nthis further disables VK_GOOGLE_display_timing extension.\nANGLE\u0027s eglSurfaceAttrib(EGL_TIMESTAMPS_ANDROID) requires\nboth EGL_ANDROID_get_frame_timestamps and\nVK_GOOGLE_display_timing extension to work:\nhttps://chromium-review.googlesource.com/c/angle/angle/+/3753396.\nAndroid EGL Wrapper\u0027s eglSurfaceAttrib() implementation\nforwards the call to ANGLE. Therefore, we need to make ANGLE\nand Android EGL Wrapper report consistent results:\nonly expose EGL_ANDROID_get_frame_timestamps in Android\nEGL Wrapper if service.sf.present_timestamp sysprop is true.\nThat way we won\u0027t have Android EGL Wrapper claiming the\nEGL_ANDROID_get_frame_timestamps extension\nis supported first, but then the subsequent call of\neglSurfaceAttrib(EGL_TIMESTAMPS_ANDROID) to ANGLE fails.\n\nBug: b/269060366\nTest: m;\ncts-tradefed run commandAndExit cts\n-m CtsDeqpTestCases --abi x86 --skip-preconditions\n--skip-all-system-status-check --module-arg\n\u0027CtsDeqpTestCases:deqp-use-angle:vulkan\u0027\n--module-arg\n\u0027CtsDeqpTestCases:include-filter:dEQP-EGL.functional.get_frame_timestamps*\u0027;\n\nChange-Id: Id96d0c749c80ba54aa1e48dba85817efab8b7eea\n"
    },
    {
      "commit": "017a471bb8659ecee6ddacb4a13dceed9d688aab",
      "tree": "bb058fd2d7c16f83d7f20eec3624b0db0d752087",
      "parents": [
        "2f1ee09dfc039657b92385a4b146f7f31987e11a",
        "ae322e6676f3c21b3fe54b26e8ed89953f995ea0"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu Mar 02 02:17:24 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Mar 02 02:17:24 2023 +0000"
      },
      "message": "Merge \"Reduce the number of owners.\" am: 0d52594ce7 am: 04aba689f4 am: ae322e6676\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2464300\n\nChange-Id: I0e480a0fe434be10b5206bae8272832bb92ef9ca\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b0cb76277af0683ca4ec8386d92f88571a9bf3d6",
      "tree": "bfd7dbc4e682ae9952d3647dc3284e7a4694e91e",
      "parents": [
        "109d1d4b942da159e75bcc0f78968ca2feec6909"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Wed Mar 01 23:08:29 2023 +0000"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Wed Mar 01 23:12:17 2023 +0000"
      },
      "message": "Reduce the number of owners.\n\nBug: N/A\nTest: N/A\nChange-Id: I400853fa9e7327e6f18a64e5ddd407141bedfe28\n"
    },
    {
      "commit": "8422727fe47abe8589999886c3e04fdc1118b31a",
      "tree": "f968201877786b92b12eb4dd22de703c0c55b313",
      "parents": [
        "e3626fb6e8f1576b28663d96c667ecebf7e58cea"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Feb 27 15:59:27 2023 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Feb 27 17:04:10 2023 -0700"
      },
      "message": "EGL BlobCache: Check properties on use\n\nThis ensures we don\u0027t incur a system property lookup\nhit for apps that don\u0027t end up using the cache.\n\nTest: Boot (quickly)\nTest: pubg_mobile_launch ANGLE trace\nTest: /data/nativetest64/EGL_test/EGL_test\nTest: /data/nativetest64/libEGL_test/libEGL_test\nBug: b/266725576\nChange-Id: Ia69b8d48a5902921bea7faad0b2fad6dc1ed7d0c\n"
    },
    {
      "commit": "e3626fb6e8f1576b28663d96c667ecebf7e58cea",
      "tree": "a8f5f3600b7d3a98017dd2df7a0a09a3e71675f0",
      "parents": [
        "b304b2f1177251c5deb904306ba5ad820e1c119d"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Fri Feb 17 14:55:59 2023 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Feb 27 10:24:06 2023 -0700"
      },
      "message": "EGL BlobCache: Don\u0027t check system property during init\n\nTrying to isolate why there is a slowdown when multifile is already\ndisabled via config.\n\nThis is a cherry-pick from master.\n\nTest: Boot\nBug: b/266725576\nBug: b/268595699\nChange-Id: I6dafcc1c5068042f7fb977b0ee012910db7f7419\nMerged-In: 91307c641b14624a373b601837e8fc397543c987\n"
    },
    {
      "commit": "f23a6a4358a31ada5157d242a065381b776f5a78",
      "tree": "a8aac70fad4ffa5a2561f93d18535d9d62c67e73",
      "parents": [
        "f625f0b6a018e9c839986d96022755b62e1dff11",
        "2879d60c71dd66c98d587bb56c8c8af4e767eeb4"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Fri Feb 24 02:07:51 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Feb 24 02:07:51 2023 +0000"
      },
      "message": "Merge \"Ensure that clearing the BlobCache sets mTotalSize to 0\" am: 2f5adcb938 am: a47ecc53de am: 2879d60c71\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2451163\n\nChange-Id: If73d8f353921bd4459a485f9029f716926dab1f3\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "4fcb1c332773ff5e650965868cdfa6afee09dc6d",
      "tree": "8fbd7a2ec8b8f33e5e1446cfe01cab44ae4da7e6",
      "parents": [
        "e813ec150004246acc6242886cc71d70a3736332"
      ],
      "author": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Fri Feb 17 15:13:59 2023 -0800"
      },
      "committer": {
        "name": "Tom Cherry",
        "email": "tomcherry@google.com",
        "time": "Wed Feb 22 11:38:00 2023 -0800"
      },
      "message": "Ensure that clearing the BlobCache sets mTotalSize to 0\n\nThere is a subtle bug in BlobCache::unflatten() that can result in no\nentries in mCacheEntries and mTotalSize \u003e0 when the input file\ncontains valid entries followed by an invalid entry. This change\nensures that mTotalSize is set to 0 in that case.\n\nBug: 239862516\nBug: 269687033\nTest: new unit test\nChange-Id: Ieab1d7a98b96e4bc8ba8bc8a3c23dfe01c5eb896\n"
    },
    {
      "commit": "6cca6c2345b2ab508d0f9cbfbb230d26263c5d68",
      "tree": "9a3cabdc14615876432ef1454b75ecef6096107b",
      "parents": [
        "32ce29d92ee5c64e9d10068d49d007e419c5a354"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Wed Feb 08 20:23:13 2023 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Wed Feb 08 21:31:51 2023 -0700"
      },
      "message": "Reland \"EGL: Refactor multifile blobcache\"\n\nThis reverts commit 437354181694798af24038dd65455eeab06a329e.\n\nPrevious CL was reverted due to boot time regressions.\n\nMain change from previous CL is removal of thread.join() if\nthe thread was not initialized.  This was happening at boot\nbecause a number of processes try to use the cache without\nproviding a location for the cache.  In that case, both old\nand new cache will not initialize.\n\nTest: Boot (quickly)\nTest: pubg_mobile_launch ANGLE trace\nTest: /data/nativetest64/EGL_test/EGL_test\nTest: /data/nativetest64/libEGL_test/libEGL_test\nBug: b/266725576\n\nChange-Id: Ib9add1c8342278a46c2e629c919719f973f8c612\n"
    },
    {
      "commit": "437354181694798af24038dd65455eeab06a329e",
      "tree": "336987e776e1e449aab0bec3374d8e16a5ab625f",
      "parents": [
        "c9576892d1e1137d392548e00e0a63c18a176d8e"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Wed Feb 08 16:19:05 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 08 16:19:11 2023 +0000"
      },
      "message": "Revert \"Reland \"EGL: Refactor multifile blobcache\"\"\n\nRevert submission 21292947-reland_blobcache_20230203\n\nReason for revert: Suspected cause of boot time regression\n\nReverted changes: /q/submissionid:21292947-reland_blobcache_20230203\n\nBug: b/266725576\nBug: b/268248090\nChange-Id: Ic70ffa65d8d194b00106853d8c05b9cc2992e02d\n"
    },
    {
      "commit": "c9576892d1e1137d392548e00e0a63c18a176d8e",
      "tree": "31f847888682c5b05aa976f4f4af0090f4492bd6",
      "parents": [
        "b03b5cee1b3c2e64a4aa300bcb1a588b60ad0cb4"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Fri Feb 03 14:00:16 2023 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Sun Feb 05 21:18:22 2023 -0700"
      },
      "message": "Reland \"EGL: Refactor multifile blobcache\"\n\nThis reverts commit b81edf95e53784d8153c7c4999ccbc1ee653be63\n\nPrevious revert was due to selinux denials causing test failures.\nTemporarily addressed in aosp/2420100\n\nThis also incorporates additional post-submit feedback on ag/21091488\n\nTest: pubg_mobile_launch ANGLE trace\nTest: /data/nativetest64/EGL_test/EGL_test\nTest: /data/nativetest64/libEGL_test/libEGL_test\nBug: b/266725576\nChange-Id: I5631301c69605f25cbca52ca8ef096294c2e1bcf\n"
    },
    {
      "commit": "6a8a4b3fd54238bd690feb59bc33fb6d7e7d9bc8",
      "tree": "81f8688ae7c699723abe3a47592094bad861c36b",
      "parents": [
        "ba881be65ed7bab719ed2ba02dbf9bb229a19511",
        "b81edf95e53784d8153c7c4999ccbc1ee653be63"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Fri Feb 03 18:52:58 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 18:52:58 2023 +0000"
      },
      "message": "Merge \"Revert \"EGL: Refactor multifile blobcache\"\""
    },
    {
      "commit": "b81edf95e53784d8153c7c4999ccbc1ee653be63",
      "tree": "41fb6ca57804311b4eaf08cfc13fe2a56059d575",
      "parents": [
        "b81ab20164c2d12e0f3d5f734edcf1147b4a12d4"
      ],
      "author": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Fri Feb 03 18:24:34 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 18:24:40 2023 +0000"
      },
      "message": "Revert \"EGL: Refactor multifile blobcache\"\n\nRevert submission 21108066-blobcache_multifile_20230125\n\nReason for revert: b/267777424\n\nReverted changes: /q/submissionid:21108066-blobcache_multifile_20230125\n\nChange-Id: Ieb94d531a12b29b61958d3d5c601be544e429d79\n"
    },
    {
      "commit": "2652cc1bb95996606aa79c139b209a2a70c6337a",
      "tree": "851402a59d76c99b3cd09ebf0b4a7d0abecdc82e",
      "parents": [
        "b26a66d93d4f53ba3a4e88c460efb6f06ae2cbf7",
        "b81ab20164c2d12e0f3d5f734edcf1147b4a12d4"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Fri Feb 03 02:38:49 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 03 02:38:49 2023 +0000"
      },
      "message": "Merge \"EGL: Refactor multifile blobcache\""
    },
    {
      "commit": "b81ab20164c2d12e0f3d5f734edcf1147b4a12d4",
      "tree": "4c03a276d7a329692ae182a0fb5ed70e1abff335",
      "parents": [
        "f34df7c256dd6aa3d23c18b59bf468283b266c09"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Tue Jan 10 15:33:18 2023 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Wed Feb 01 21:05:20 2023 -0700"
      },
      "message": "EGL: Refactor multifile blobcache\n\nAfter more testing, it became apparent that we need to\navoid accessing the filesystem to have decent speed.\n\nThis CL does that by:\n* Moving the multifile cache to a class\n* Tracking all entries in a bookkeeping system\n* Remove use of STL for read/write\n* Keep recent entries in a hot cache\n* Deferring file writes to a worker thread\n* Allowing devices to opt in via config\n\nFor more data and details on the design philosophy:\ngo/improving-multifile-blobcache-speed\n\nAlso added a new sequence of tests that bypass EGL\nand directly invoke the mulfifile cache.\n\nTest: pubg_mobile_launch ANGLE trace\nTest: /data/nativetest64/EGL_test/EGL_test\nTest: /data/nativetest64/libEGL_test/libEGL_test\nBug: b/266725576\nChange-Id: Ia19147522a6f68f05fbe47c1545e4c9d69e513c6\n"
    },
    {
      "commit": "d5b743af1bfa3db7e82cffe5f6b47e59b5ef355c",
      "tree": "7c6fd15f06ebf14c82cb1c448adf029f7da96b20",
      "parents": [
        "f25991f362f0b15f90f1e1d86a2a9da514718581"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Thu Jan 19 14:08:46 2023 -0700"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Thu Jan 19 14:12:54 2023 -0700"
      },
      "message": "Reduce logspam for ANGLE dlopen messages\n\nA long-lived line of code in the EGL load_angle() function is\nproducing logcat spam.  This same type of log message does not exist\nin load_updated_driver().  It will be fine to remove it from\nload_angle().\n\nTest: atest CtsOpenGLTestCases\nBug: 265344106\nChange-Id: I41d694ea9ffa397666c95f2bc009dff2fc1cd10e\n"
    },
    {
      "commit": "0278db49d358943cd52655b4d63f1c46efa4e76a",
      "tree": "21739d3255c03824227b4a49e417029180774613",
      "parents": [
        "990ff7ba368f3d24ba6ac25321e326c82f13d620"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Fri Jan 06 17:06:03 2023 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Jan 09 15:26:56 2023 -0700"
      },
      "message": "EGL BlobCache: Disable multifile to address Wembley perf\n\nNeed to investigate multifile performance on Wembley, which does\nnot use SkiaVk.  That means many small/simple GL programs are taking\nlonger to start.  Accessing the filesystem is taking longer than a\nquick return from a sub 1MB cache.\n\nTest: Build and inspect cache locally\nTest: /data/nativetest64/EGL_test/EGL_test\nBug: b/263574392\nChange-Id: Iacc725f902fd91c7cbd06b293ec96f5ab5eeb1c3\n"
    },
    {
      "commit": "25e18c93a19f9b452de89a1327e57808757ef2a6",
      "tree": "a228b37d79a35a21ae0ea5fcce762e456e0b22ec",
      "parents": [
        "e893d3d984d34551dd3af73befc17b81ad0917c5"
      ],
      "author": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Dec 27 08:59:29 2022 -0800"
      },
      "committer": {
        "name": "Greg Kaiser",
        "email": "gkaiser@google.com",
        "time": "Tue Dec 27 09:01:12 2022 -0800"
      },
      "message": "EGL BlobCache: Initialize mMultifileCleanupPending\n\nThis field was being used uninitialized, so we set it in the\nconstructor to have consistent behavior.\n\nTest: None\nBug: b/246966894\nChange-Id: I7fde6dcb3783ed980f19993cb3438b180ee413d1\n"
    },
    {
      "commit": "2c9085b0ba47c09055de57b5efb4569813f8609d",
      "tree": "57a9107f92182fb60966b98b8971eb2f0aede00e",
      "parents": [
        "8be052fe3dee052a043e38444a4545f7116a6c45"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Dec 12 11:35:54 2022 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Thu Dec 22 14:25:10 2022 -0700"
      },
      "message": "Reland \"EGL BlobCache: Support multifile cache and flexible size limit\"\n\nThis reverts commit 82a9353d96954edd78d5e2f342a669dd8ddce5d1 and\nincorporates a change to only use the fixed upper cache limit instead\nof reading one from GraphicsEnvironment.\n\nTest: Multiple apps and ANGLE traces\nTest: atest CtsSdkSandboxInprocessTests\nTest: /data/nativetest64/EGL_test/EGL_test\nBug: b/246966894\nChange-Id: Iae44e06377de48fe2101bf547b02d3aaf37443d9\n"
    },
    {
      "commit": "82a9353d96954edd78d5e2f342a669dd8ddce5d1",
      "tree": "108a2c38acd153988e92254de86b76b435e3d3f6",
      "parents": [
        "c45249975aa7d6e8894e991c7acb1765f076db56"
      ],
      "author": {
        "name": "Hung-Wei Chen",
        "email": "hungweichen@google.com",
        "time": "Thu Dec 22 07:15:19 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 22 07:15:33 2022 +0000"
      },
      "message": "Revert \"EGL BlobCache: Support multifile cache and flexible size...\"\n\nRevert submission 20505145-blobcache_multfile_20221221d_upload\n\nReason for revert: DroidMonitor-triggered revert due to breakage , bug b/263445637.\n\nBUG: 263445637\n\nReverted changes: /q/submissionid:20505145-blobcache_multfile_20221221d_upload\n\nChange-Id: I3933393bbe257341327c1662972b297cf6c99cd3\n"
    },
    {
      "commit": "c45249975aa7d6e8894e991c7acb1765f076db56",
      "tree": "9805f05b254a42d90f606195fe92ec6b6bcdc3df",
      "parents": [
        "34dfbf0c36c74e732b2cb2402f7a55747e56ddeb"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Dec 12 11:35:54 2022 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Wed Dec 21 18:55:24 2022 -0700"
      },
      "message": "EGL BlobCache: Support multifile cache and flexible size limit\n\nThis CL introduces the ability to support EGL blob cache using\nmultiple files. This allows us to increase the amount of cache\navailable to applications, without increasing process memory\nused to get/set from the cache.\n\nIn order to support this, entries will be written to a new\ndirectory in the same location:\n\n  $ adb shell\n  # cd /data/user_de/0/\u003cpackge_name\u003e/code_cache\n  # ls -la com.android.opengl.shaders_cache.multifile\n  total 53M\n  drwx--S--- 2 u0_a276 u0_a276_cache 248K 2022-12-13 15:45 .\n  drwxrws--x 3 u0_a276 u0_a276_cache 404K 2022-12-13 11:26 ..\n  -rw------- 1 u0_a276 u0_a276_cache 7.1K 2022-12-13 15:43 1000572839\n  -rw------- 1 u0_a276 u0_a276_cache 8.9K 2022-12-13 15:43 1000616115\n  -rw------- 1 u0_a276 u0_a276_cache 5.0K 2022-12-13 15:43 1001816402\n  -rw------- 1 u0_a276 u0_a276_cache 4.3K 2022-12-13 15:44 1002265221\n  -rw------- 1 u0_a276 u0_a276_cache 8.2K 2022-12-13 15:44 1002773033\n  -rw------- 1 u0_a276 u0_a276_cache 2.8K 2022-12-13 15:45 1004532460\n  -rw------- 1 u0_a276 u0_a276_cache 4.3K 2022-12-13 15:45 1005120329\n  ...\n\nThe filenames are generated by hashing the incoming key.\n\nThe cache limit is set in ag/20506291 by GraphicsEnvironment based on\ngetCacheQuotaBytes from StorageManager. If exceeded, we invoke an LRU\nthat clears files, oldest first, until under the cap.\n\nThe new mode is enable by default, but can be disabled with:\n\n  adb shell setprop debug.egl.blobcache.multifilemode false\n\nThe cache limit can also be modified with debug properties:\n\n  adb shell setprop debug.egl.blobcache.bytelimit \u003cbytes\u003e\n\nTest: Multiple apps and ANGLE traces\nTest: /data/nativetest64/EGL_test/EGL_test\nBug: b/246966894\nChange-Id: I5e946d43728fdcea7dad08a4283129490893a122\n"
    },
    {
      "commit": "ca473b2e3c69741d7fb72f618606fb3fdc71d25c",
      "tree": "bef99cf82c65ffdb06b677debbcce7abb6349473",
      "parents": [
        "67244df9b3d0f60f5a3eaad0cb0f912dc745ca80",
        "2a66e5457bb43316e78f511d9e89013f63b6f200"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Wed Dec 21 05:43:46 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 21 05:43:46 2022 +0000"
      },
      "message": "Merge \"OpenGL: Update test mapping to include EGL_test\""
    },
    {
      "commit": "2a66e5457bb43316e78f511d9e89013f63b6f200",
      "tree": "c37102a2e0d96fa398acb7db84040020ca00519a",
      "parents": [
        "2fdbd6c634209e28c72c82726bae10b980019d10"
      ],
      "author": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Mon Dec 19 15:32:11 2022 -0700"
      },
      "committer": {
        "name": "Cody Northrop",
        "email": "cnorthrop@google.com",
        "time": "Tue Dec 20 14:37:13 2022 -0700"
      },
      "message": "OpenGL: Update test mapping to include EGL_test\n\nWe need to get EGL tests running continuously in order\nto make modifications to blobcache.\n\nSkipping one failing test, will address or remove after\nwe get the test running.\n\nAlso add hasWideColorDisplay checks to two tests that\nrequire Display P3 gamut.\n\nTest: adb shell /data/nativetest64/EGL_test/EGL_test\nBug: b/120714942\nBug: b/246966894\nChange-Id: I985f871900ab72553bcf0e73987b843800fcac89\n"
    },
    {
      "commit": "b2901c9ec5b6e131623170b3ca3b9bd79bb25545",
      "tree": "9e501b718617a405ffee7fde6e0ac37ed61a1439",
      "parents": [
        "615c1f396ed1f7104f76f249991ef286e53039a8"
      ],
      "author": {
        "name": "Serdar Kocdemir",
        "email": "kocdemir@google.com",
        "time": "Thu Nov 17 00:39:05 2022 +0000"
      },
      "committer": {
        "name": "Serdar Kocdemir",
        "email": "kocdemir@google.com",
        "time": "Mon Dec 12 17:21:14 2022 +0000"
      },
      "message": "Adding new Vulkan metrics to GPU Stats\n\nFollowing fields are added into GpuStatsAppInfo for tracking:\n    bool createdGlesContext \u003d false;\n    bool createdVulkanDevice \u003d false;\n    bool createdVulkanSwapchain \u003d false;\n    uint32_t vulkanApiVersion \u003d 0;\n    uint64_t vulkanDeviceFeaturesEnabled \u003d 0;\n    std::vector\u003cint32_t\u003e vulkanInstanceExtensions \u003d {};\n    std::vector\u003cint32_t\u003e vulkanDeviceExtensions \u003d {};\n\nExtensions are tracked as 32-bit hashes.\nsetTargetStatsArray GPU service function added to provide\nan array of stat values, used for reporting list of extensions.\n\nBug: b/244286661\nTest: adb shell dumpsys gpu\nTest: atest GpuStatsTest\nChange-Id: I4ae4e3b687cd6274a9b4127a336dd0f91f5f9e39\n"
    },
    {
      "commit": "7c0a7ee6eaf7b2af95750daa06389a5235fd86c8",
      "tree": "f1a77054afcafcc9f7768125b5672a08c6f8caa6",
      "parents": [
        "0c5d8ab88537901d40337abb2d0b26305254514d"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Thu Apr 21 12:41:03 2022 -0600"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Tue Oct 25 12:44:50 2022 -0600"
      },
      "message": "Can switch to legacy GLES driver when ANGLE is system driver\n\nChange the sense of the run-time switches so that ANGLE can be an\noptional GLES driver or the default system GLES driver.  When ANGLE is\nthe system GLES driver, also handle the case of there being no legacy\nGLES driver.\n\nTest: logcat\nTest: atest CtsAngleIntegrationHostTestCases\nTest: atest CtsEffectTestCases:android.effect.cts.EffectTest#test5_effectCreate\nBug: 224558229\nChange-Id: I5383966daeea74a9d7c878c8f63f70f7fc7ccc50\nMerged-In: I5383966daeea74a9d7c878c8f63f70f7fc7ccc50\n"
    },
    {
      "commit": "f71cf3ba9321d3158ec58aca9363c70d88e89b12",
      "tree": "34a3ab0ba20d4ea8df255d4b47faaa5ba2b4019a",
      "parents": [
        "f2a731e30917fa9b42eb28af858d2d89b2a0fdb1",
        "73fe3cdede9e72595397fc9c7a5a2298ce7ae994"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 20:20:11 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Oct 24 20:20:11 2022 +0000"
      },
      "message": "Merge \"Add opengl assembly stub for riscv64\" am: 18284462f3 am: 3a53d363be am: 73fe3cdede\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2252353\n\nChange-Id: Ie17c38542a8a124251e44a6dfe1f15031e53cccd\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "fd223141c5dd3c5858617bbac6fe3fc72b8bdf2f",
      "tree": "3626b18de5acd9232c0e9839284b54c3307cc65b",
      "parents": [
        "4e5ceff198ffab57e5f13f1c4f7de1f8cb055911"
      ],
      "author": {
        "name": "Xia Lifang",
        "email": "lifang_xia@linux.alibaba.com",
        "time": "Wed Oct 12 20:40:37 2022 +0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Oct 21 20:37:52 2022 +0000"
      },
      "message": "Add opengl assembly stub for riscv64\n\nBug: http://b/254901618\nSigned-off-by: Xia Lifang \u003clifang_xia@linux.alibaba.com\u003e\nSigned-off-by: Mao Han \u003chan_mao@linux.alibaba.com\u003e\nChange-Id: Ifefde47bca3e67b09e6f7b422ea494348169a84f\n"
    },
    {
      "commit": "290e61ee6d0a96b8bd3cf8a051885f48462a7251",
      "tree": "20f90283b8b532d73834cddfdb3c28d4b9fc6c2f",
      "parents": [
        "19883534586d29a306302a41306405d5efdc4b2e",
        "31b5ac21e84a0fde6483dc8487af664582dcc5ee"
      ],
      "author": {
        "name": "Huihong Luo",
        "email": "huisinro@google.com",
        "time": "Fri Oct 07 03:57:34 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Oct 07 03:57:34 2022 +0000"
      },
      "message": "Merge \"Remove internal display related methods\""
    },
    {
      "commit": "6dc423866e151f49539f107af848cd6ca9dbccc3",
      "tree": "a8c099fbfecbebcff90036d6e30d09bca407d934",
      "parents": [
        "a583307f211b49f1052da3e5de15b3e65632db7b",
        "a1fcd3dd5391ad67bbc735dc12430fb0590e0561"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Sep 30 07:46:47 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Sep 30 07:46:47 2022 +0000"
      },
      "message": "Merge \"egl: plumb through counter events to atrace\""
    },
    {
      "commit": "db7608789a122c462b3296af08ffb028e5269e8a",
      "tree": "b64a30ce791f7d538edebf0c1824f59df6145edb",
      "parents": [
        "be7e4c2188ec62709f235868fb2c0f3e3528b4af",
        "f72a43180b352fc4d05dd2077ac6712c139a4896"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 28 03:42:49 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Sep 28 03:42:49 2022 +0000"
      },
      "message": "Merge \"Declare the headers of the ndk_library\" am: ee56ce65be am: 589ef2ae13 am: 3622609bde am: 56741fbf58 am: f72a43180b\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2212877\n\nChange-Id: I50c25ec8bacfe55333ebe27690d34eda0c56a011\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ee56ce65be55f0c0a8cf6a124efaaec9f9d45ff4",
      "tree": "37720bde6616d026094b662fccb63f7f3ffa3009",
      "parents": [
        "2167e10a981cb04a2ae69fa837a8aa777718b5f9",
        "4a5e3f2b1b4641be1a14faed7a7ad05a59aa5e7d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 28 00:30:46 2022 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 28 00:30:46 2022 +0000"
      },
      "message": "Merge \"Declare the headers of the ndk_library\""
    },
    {
      "commit": "b0928a0a7191df21ea958802bc3e2962b3760849",
      "tree": "2642b101815d2a05bd8645a29cb8b076145f5cf0",
      "parents": [
        "46295180090f52ae27f1007c0ce3e008a2dda8c7",
        "9476468faca9d185b4ced3f91628139fda175017"
      ],
      "author": {
        "name": "Trevor Black",
        "email": "vantablack@google.com",
        "time": "Tue Sep 27 20:27:55 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Sep 27 20:27:55 2022 +0000"
      },
      "message": "Merge \"Increased the Android blob cache size from 2mb to 32mb\""
    },
    {
      "commit": "a1fcd3dd5391ad67bbc735dc12430fb0590e0561",
      "tree": "d7fe5f54e4088e378088869222bc9554a65d9792",
      "parents": [
        "46295180090f52ae27f1007c0ce3e008a2dda8c7"
      ],
      "author": {
        "name": "Chris Forbes",
        "email": "chrisforbes@google.com",
        "time": "Tue Sep 27 17:11:35 2022 +1300"
      },
      "committer": {
        "name": "Chris Forbes",
        "email": "chrisforbes@google.com",
        "time": "Tue Sep 27 17:11:35 2022 +1300"
      },
      "message": "egl: plumb through counter events to atrace\n\negl_angle_platform handled some but not all trace events that ANGLE can\nemit. In particular, counters were dropped on the floor.\n\nFrom a change proposed in b/216025815.\n\nBug: b/216025815\nChange-Id: I7abb78d5feed90de16099e97e4a816f56443cf27\n"
    },
    {
      "commit": "31b5ac21e84a0fde6483dc8487af664582dcc5ee",
      "tree": "79150a8c2b31fbfbc7fa48ffb313833073fb6a1c",
      "parents": [
        "5a0d7d494aaf7a6bbf280e41564f2e79b2860cb6"
      ],
      "author": {
        "name": "Huihong Luo",
        "email": "huisinro@google.com",
        "time": "Mon Aug 15 20:38:10 2022 -0700"
      },
      "committer": {
        "name": "Huihong Luo",
        "email": "huisinro@google.com",
        "time": "Mon Sep 26 21:07:46 2022 +0000"
      },
      "message": "Remove internal display related methods\n\nSurfaceFlinger and SurfaceComposerClient simply return the first\nconnected display as internal display, which is not really correct.\nIn particular,in the case of dual display for foldable devices, both\ndisplays are marked as Internal determined by calling into HWC2\nIComposerClient::getDisplayConnectionType().\n\nTherefore, the concept of internal/external/primary displays is removed\nfrom SurfaceFlinger, and the display manager is the better place to\nhandle the logics.\n\nflatland is modified to take an extra argument to specify display id,\nand error occurs if no display is specified in case of multi-display.\n\nBug: 241285477\nBug: 242763577\nBug: 74619554\nTest: atest libgui_test libsurfaceflinger_unittest SurfaceFlinger_test\nChange-Id: Ib6c7e502ef3269c2c60a4e5388e5ac75275f87ed\n"
    },
    {
      "commit": "9476468faca9d185b4ced3f91628139fda175017",
      "tree": "425d765f72c55458928962c9a00ef94423e527b7",
      "parents": [
        "bac4b5273f071d85e08f734e6debe57c3cdb347c"
      ],
      "author": {
        "name": "Trevor David Black",
        "email": "vantablack@google.com",
        "time": "Mon Sep 26 20:31:28 2022 +0000"
      },
      "committer": {
        "name": "Trevor David Black",
        "email": "vantablack@google.com",
        "time": "Mon Sep 26 20:36:58 2022 +0000"
      },
      "message": "Increased the Android blob cache size from 2mb to 32mb\n\nDocumentation available at:\ngo/android-platform-blobcache-improvements\ngo/angle-shader-caching\n\nData \u0026 Results available at:\ngo/angle-shader-caching-perf\n\nTest: Build \u0026 run w/ any applications\nBug: b/246966894, b/240607708, b/228054341\nChange-Id: I1d7979d1b6a0b6b02c74fc30d674947ed113f3f4\n"
    },
    {
      "commit": "a06d5754b341d55710d3d1922f76d9802987ae7a",
      "tree": "ccd7412c7f3a991044a61ac177bdaf8ed0c05f07",
      "parents": [
        "1c2559066acba9080ae762ff1a0b5a4c5de6045e",
        "1a8094363008b8ef7b3c60d4f33735c5c99b81c6"
      ],
      "author": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Fri Sep 23 19:06:29 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Sep 23 19:06:29 2022 +0000"
      },
      "message": "Merge \"Explicitly list the static libs for exclude-libs flag.\" am: b3f0aab014 am: 0b0b629b60 am: 89ea7b26fa am: 18c4f489f1 am: 1a80943630\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2227218\n\nChange-Id: I74597f6bb8c738531248224d9987a8edece64e4f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "1b5902e6b7bd843b0ef97fe5ba6ec78d5c90d4d8",
      "tree": "bfe9daec7632b780cc625a98d77476557f974594",
      "parents": [
        "e583df86038451c8a60b2b943f403cc294ae5c97"
      ],
      "author": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Thu Sep 22 12:14:34 2022 -0700"
      },
      "committer": {
        "name": "Yu Liu",
        "email": "yudiliu@google.com",
        "time": "Thu Sep 22 12:14:34 2022 -0700"
      },
      "message": "Explicitly list the static libs for exclude-libs flag.\n\nThis is to work around an issue where the symbols from all the local\nsource are hidden when building this with bazel.\n\nBug: 232544295\nTest: Manual\nChange-Id: I8919f8cc76f0d97b3c6a10edc3863be2e135c4b8\n"
    },
    {
      "commit": "4a5e3f2b1b4641be1a14faed7a7ad05a59aa5e7d",
      "tree": "21c9a390b8ffb951acfe5dfee7c4c42f78c7e2ee",
      "parents": [
        "0bddf15fafc3d27a935c0bbf3aa099c6ab6060fc"
      ],
      "author": {
        "name": "Spandan Das",
        "email": "spandandas@google.com",
        "time": "Thu Sep 08 21:49:51 2022 +0000"
      },
      "committer": {
        "name": "Spandan Das",
        "email": "spandandas@google.com",
        "time": "Thu Sep 08 21:49:51 2022 +0000"
      },
      "message": "Declare the headers of the ndk_library\n\nThis creates a dependency edge between the ndk_library and its headers,\nwhich should be a no-op in regular Soong builds. This dependency edge\nwill be used in the Multi-tree project to export the relevant .h files into a well\nknown location\n\nFormatting changes are from bpfmt\n\nTest: m nothing\nBug: 239044713\nChange-Id: I432c361195c0d6adb0584b91ab006fb36d45d894\n"
    },
    {
      "commit": "552bdbb3f7e423c4047ed209917a12f8cadf86e9",
      "tree": "db84b827307260c3e1e05d5d30a08c08d427e158",
      "parents": [
        "ae30141ed1e6ac0f9a41a14012a9f072034b3f70",
        "ad3a19985dcb7cd8bc76ce203b26b28765112bf4"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Jun 29 17:23:05 2022 +0000"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Wed Jun 29 17:23:05 2022 +0000"
      },
      "message": "Merge tm-dev-plus-aosp-without-vendor@8763363\n\nBug: 236760014\nMerged-In: Id23fa2f0004319f4ee592e19dc34a6b74cdb644f\nChange-Id: I146284f445cfeff49cab8b93e5a6a97b4a0e0eaa\n"
    },
    {
      "commit": "63e23734c62027cce268aad83306486579566a62",
      "tree": "a087dae490c3b55bf00176ec131fa0f849ba6794",
      "parents": [
        "1fed86ea9ea16a2d88f1a6a285fbab91143bcc6d",
        "631108b6c155235d809143a6e52a377df752075a"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Mon Jun 27 22:56:14 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 27 22:56:14 2022 +0000"
      },
      "message": "Merge \"Plumb 2 EGL surface attributes to ANGLE\" am: 412da8194d am: c3843ac878 am: 7692db70d6 am: b635a8578d am: 631108b6c1\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2120668\n\nChange-Id: I362636832181baee9c2f49bfff0680cb15099c9b\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "7692db70d670f6bd4ab93f311bfe5d6920d3d21f",
      "tree": "6b24427a00e11df264fc63b1970e706cf5e5878c",
      "parents": [
        "229098ef9d1872f9b3e3efb1baef30a63bc64667",
        "c3843ac878c33e156e2c4597e78d086ce55d643b"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Mon Jun 27 21:48:38 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon Jun 27 21:48:38 2022 +0000"
      },
      "message": "Merge \"Plumb 2 EGL surface attributes to ANGLE\" am: 412da8194d am: c3843ac878\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2120668\n\nChange-Id: I290fc8f60f2ed6e3552c18029f8d66c90c261a19\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "ecd161de7af9625ba0630e86ec14b26b2bc3b306",
      "tree": "24fb63ea8c3f7fcb060a0c8f44581c63ccca66ba",
      "parents": [
        "8005f7eae56ba6f7c09ab69cbcdd9d59ce9fefda"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Fri Jun 10 16:44:44 2022 -0600"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Thu Jun 23 17:11:06 2022 -0600"
      },
      "message": "Plumb 2 EGL surface attributes to ANGLE\n\nThe eglSurfaceAttribImpl locally handles the following attributes.\nHowever, these need to be passed to ANGLE, for coordination with the\nVulkan swapchain.\n\nTest: Manual testing with partner\nBug: 234749888\nChange-Id: I5759bf0de52aa9053d11e3ca1ec810082d564863\n"
    },
    {
      "commit": "fa0669c226fc006138d5f41c5d024d880567ff19",
      "tree": "4275c6906bec2f5d9c4d31f86e9493072993c576",
      "parents": [
        "cc4cb99428ea6cf56a601d08dd9830ead8c5e6f6",
        "2404fc8dcbc938186bbd54d4d0bb7bd7f5897ac7"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 17 00:46:59 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue May 17 00:46:59 2022 +0000"
      },
      "message": "Merge \"Merge \"Merge \"opengl: tests: Add explict android:exported flag to manifests\" into android12-tests-dev am: d59857efb3\" into android12L-tests-dev am: 5825d17d0e\" am: 97c1356a08 am: 5858d45875 am: 753cc1c1b5 am: 78e12fe219 am: 2404fc8dcb\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1958441\n\nChange-Id: Ie5552766ba4b2ffa66b401892caa90d7110bb143\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "753cc1c1b5e2fd3aca17bda7b100cf8aa8879493",
      "tree": "b1919ac3f69035251202be3bb3c261af6d6a827c",
      "parents": [
        "24e9b4efe023cac3bf82b0bea8ba944f7269b8c1",
        "5858d458756e86c848f60b899c692cc063f9a6a2"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 16 23:43:14 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 16 23:43:14 2022 +0000"
      },
      "message": "Merge \"Merge \"Merge \"opengl: tests: Add explict android:exported flag to manifests\" into android12-tests-dev am: d59857efb3\" into android12L-tests-dev am: 5825d17d0e\" am: 97c1356a08 am: 5858d45875\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1958441\n\nChange-Id: I7abdf21ddd473c4af85bd2610d768679728f43ee\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b53174fc82a96488b54252ea306e894d25e2bdcb",
      "tree": "4f77594702e71208183e7b4c81c4c1d7b63f365e",
      "parents": [
        "c464a41d564d1060226235ea0f58fc720df7bf68",
        "5825d17d0e3beeff3fdc670cf68e6df88832f398"
      ],
      "author": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 16 23:04:51 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Mon May 16 23:04:51 2022 +0000"
      },
      "message": "Merge \"Merge \"opengl: tests: Add explict android:exported flag to manifests\" into android12-tests-dev am: d59857efb3\" into android12L-tests-dev am: 5825d17d0e\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1958441\n\nChange-Id: I4badf8e2ead3c9bf5dd0e50d4f317b1daaadeb5e\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a1418a87c2ef089c71a3d3d6dd8a821f95a579a3",
      "tree": "b848bbc5254446db7bc513670fd3cb9c750d4c31",
      "parents": [
        "5789838e65de063a8b6285e92f37b4d268e5a725",
        "6c9298332348012b5cd558246cd42a51190dc846"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri May 13 22:56:06 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 13 22:56:06 2022 +0000"
      },
      "message": "Merge \"Move from libbacktrace to libunwindstack.\" am: dec3623839 am: ffd95c6eb5 am: 63405a8796 am: 20719231cd am: 6c92983323\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2046923\n\nChange-Id: Ibe0fc4d522174407a52ccda5041d3bcd7d5d13c9\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "63405a8796f11c54a96513725ffb789a5d4990b9",
      "tree": "b2374a9fe655ec28f25a565a44d434f82e96ed86",
      "parents": [
        "746592d04a031a513de403e9497b9625bf3ed144",
        "ffd95c6eb5dfa999fcec04b67bae7e9cb6e19dc5"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri May 13 17:08:49 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 13 17:08:49 2022 +0000"
      },
      "message": "Merge \"Move from libbacktrace to libunwindstack.\" am: dec3623839 am: ffd95c6eb5\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2046923\n\nChange-Id: I3da51a8a4f23b3b2ae54e33efd2c16102ab864ad\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "dfb50b448f86a284bdad12d65feab0d158f38e2f",
      "tree": "66c9f78389f91ce791e84e35db16f02b8b497f0a",
      "parents": [
        "1293b47435ca4d76f48f6eb153ff01c1f8e2e06d"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed Mar 23 12:37:58 2022 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed May 11 17:20:09 2022 -0700"
      },
      "message": "Move from libbacktrace to libunwindstack.\n\nUse the new AndroidUnwinder object to replace the libbacktrace version.\n\nBug: 120606663\n\nTest: Run unit tests.\nTest: Force a call to CallStack::log() and verify the backtrace is\nTest: reasonable.\nChange-Id: I73d909821a33f716d7b0e0997d43c6ab11c7c4f9\n"
    },
    {
      "commit": "3f94a5ef2f0b1db0586a7a1905e2fd862b0e2d89",
      "tree": "a386378c98caff7b7e65e820f9794d27421467b3",
      "parents": [
        "a51819f1cc7eaa02041c36ecc10b98bf934bee6c",
        "1f5d63e17cc5f33378bd36731e2bf5b5fe821082"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri May 06 13:57:10 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri May 06 13:57:10 2022 +0000"
      },
      "message": "Merge \"Add a return value to BlobCache::set\" into tm-dev am: 8a5d80d7d1 am: 1f5d63e17c\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/18145090\n\nChange-Id: I1cee4bae40059203090b6dd609f200f366b57f33\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "f1ec83d4b1ac4f3344a538f9a0ada7d45edad0cb",
      "tree": "28446152a5c2bee0ceaf303f160fb10937ac748b",
      "parents": [
        "d7b0cfaf2ccad2e3230e695987ebfad65c6a38b4",
        "8a5d80d7d1f4639e4fc3f731ef334b68d8f0852a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu May 05 21:10:12 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu May 05 21:10:12 2022 +0000"
      },
      "message": "Merge \"Add a return value to BlobCache::set\" into tm-dev am: 8a5d80d7d1\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/18145090\n\nChange-Id: Iade4812db1453cac72775d1801a094c90cc02969\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "638f50a3eb96bd2f0df441b17f4319c92bc2b2c6",
      "tree": "811e2d7b6b4272506343672539c30c54bcd1ae53",
      "parents": [
        "4aa66a5322a6f79948c0836eee859098943ee335",
        "0c93f2f889f8183c1642141df7d720d6b49ec5ae"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Wed May 04 23:09:46 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed May 04 23:09:46 2022 +0000"
      },
      "message": "Merge \"Remove Tim \u0026 add Frank/team as opengl/graphicsenv OWNERS\" am: 864034bf75 am: fd1325dd5a am: 5b526d3a97 am: 23b045541b am: 0c93f2f889\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2086284\n\nChange-Id: I6b17c7ff0c24a434b1e6af69580bd729af0e1280\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "5b526d3a9708c7155557a19347b6992ea7cab4fe",
      "tree": "e76d7cb258241c5089886a652b15aef7ced71594",
      "parents": [
        "738c775a86a04d909341cb4fa9c789ac3fb4221c",
        "fd1325dd5aafafac7602923aea1c445748f4ecdb"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Wed May 04 21:46:15 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed May 04 21:46:15 2022 +0000"
      },
      "message": "Merge \"Remove Tim \u0026 add Frank/team as opengl/graphicsenv OWNERS\" am: 864034bf75 am: fd1325dd5a\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2086284\n\nChange-Id: If683522fb48498e0a97b958153e5fad2718d8571\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "1853f6c3f6c1ab23b5642f4d9f8d0637c9634d2e",
      "tree": "e7ea97f3821cb0c2679038a0c9903a62961f43c7",
      "parents": [
        "8a8ba7a2cd51c27cea1499fcbc1dd50afb5bef04"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Tue May 03 15:54:50 2022 -0600"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Tue May 03 15:56:53 2022 -0600"
      },
      "message": "Remove Tim \u0026 add Frank/team as opengl/graphicsenv OWNERS\n\nBug: 221459804\nTest: Visual inspection\nChange-Id: I50da93990130f3eb6b4e11b8bb9e542a8cdc76d7\n"
    },
    {
      "commit": "2337796cdf4b886d9ed48bd732f404fbb3e7336d",
      "tree": "fa6ea19b8b2077a698c80e49de22f69580fb90b9",
      "parents": [
        "f7f5aac06830d17a2c1337e0095fb9ddaf8a0314"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue May 03 14:53:14 2022 -0400"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue May 03 15:18:01 2022 -0400"
      },
      "message": "Add a return value to BlobCache::set\n\nHWUI\u0027s shader cache uses a BlobCache for writing to persistent storage.\nWe would like to know whether the cache is large enough to hold the\nnecessary shaders, but BlobCache does not currently provide any way to\ninspect it.\n\nAdd a new enum with possible outcomes from BlobCache::set and return it\nfrom that method. This way a client can use this information, e.g. in\nperfetto traces.\n\nBug: 231194869\nBug: 225211273\nTest: atest libEGL_test (BlobCacheTest)\nChange-Id: I9aade9da42cae83da053cc8d5e24999de1936de6\n"
    },
    {
      "commit": "5279f866e2ba354845770fc09235796b481486b0",
      "tree": "5c476e5b81e6774718afcc41e636f6179c02dcde",
      "parents": [
        "2a4434af89a7fddcf76faefb67b1f417a36804b3"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Thu Apr 21 12:41:03 2022 -0600"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Tue May 03 12:46:58 2022 -0600"
      },
      "message": "Can switch to legacy GLES driver when ANGLE is system driver\n\nChange the sense of the run-time switches so that ANGLE can be an\noptional GLES driver or the default system GLES driver.  When ANGLE is\nthe system GLES driver, also handle the case of there being no legacy\nGLES driver.\n\nTest: logcat\nTest: atest CtsAngleIntegrationHostTestCases\nTest: atest CtsEffectTestCases:android.effect.cts.EffectTest#test5_effectCreate\nBug: 224558229\nChange-Id: I5383966daeea74a9d7c878c8f63f70f7fc7ccc50\n"
    },
    {
      "commit": "2e62815e6a40ca52c004abbfd2095aee22796085",
      "tree": "9f4b0ee03d76085a1303204841f5dccee14abf93",
      "parents": [
        "b1633c4e2fe14ee6c94f9a897c28a9ef6be0771e"
      ],
      "author": {
        "name": "Simon Bowden",
        "email": "sbowden@google.com",
        "time": "Mon Apr 25 15:49:42 2022 +0000"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Wed Apr 27 12:55:52 2022 +0000"
      },
      "message": "Revert \"Change Android platform for when ANGLE is default\"\n\nRevert \"Change Android platform for when ANGLE is default\"\n\nRevert submission 17653617-DisableANGLE1\n\nReason for revert: b/230126358: candidate for test breakage on cf_x86_64_phone-userdebug\nReverted Changes:\nI2446b18e9:Change Android platform for when ANGLE is default\nI83e59002b:Change Android platform for when ANGLE is default\n\nChange-Id: I3b8724abd6eb249c3060fffe0334622cdafdae89\n"
    },
    {
      "commit": "845fee957a26d3f10754df8b77dc868f6e8d2508",
      "tree": "f35dd34867e6c40c438e8db57410e3ee7ce6e43b",
      "parents": [
        "b0bf57233a0583702d31786bf2474b7c3041102c"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Thu Apr 21 12:41:03 2022 -0600"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Thu Apr 21 17:10:11 2022 -0600"
      },
      "message": "Change Android platform for when ANGLE is default\n\nAllow adb commands to select ANGLE vs the legacy GLES driver\nregardless of which driver is the system (default) driver, and to\nselect between different versions of ANGLE if multiple versions are\ninstalled (e.g. the built-in system driver vs. an updated APK).\n\nTest: logcat\nBug: 224558229\n\nChange-Id: I83e59002b67181fda4da6070b80ffa595bc25ac4\n"
    },
    {
      "commit": "cf740c3f045e38169c5692ea8f659e31cdf87712",
      "tree": "8e05b573dd80ae4e5359977dc8c5c3b11f204589",
      "parents": [
        "57b91217ff8cda372dbce11093a2276f1ca39a25",
        "9a02a9dcdcab04a6d8a66deb282736dbcfe3e1ce"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Mar 04 22:45:13 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 04 22:45:13 2022 +0000"
      },
      "message": "Merge \"Add rest of Frank\u0027s team to OWNERS\" am: 1fe6ff63e8 am: 81285b2235 am: 9a02a9dcdc\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/2009118\n\nChange-Id: I6c1895731304f7d0ffa2ebe7122652decde6ea4f\n"
    },
    {
      "commit": "3eaedefb3fb6802d51b1acc49e965914c2ddd108",
      "tree": "bb1ae29db8c6bb5ca2a7b82878404480d2bdf5d1",
      "parents": [
        "8a4e1aa5612c86362c1dd3c7d446c24d7a768ee2"
      ],
      "author": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Fri Mar 04 12:18:00 2022 -0700"
      },
      "committer": {
        "name": "Ian Elliott",
        "email": "ianelliott@google.com",
        "time": "Fri Mar 04 12:18:00 2022 -0700"
      },
      "message": "Add rest of Frank\u0027s team to OWNERS\n\nBug: 221459804\nTest: Visual inspection\nChange-Id: Ie8ad9630027faeb56e6f80021e99917cde06306b\n"
    },
    {
      "commit": "8e8ae4222f9fb0499af755a4255cceb89a79bd78",
      "tree": "78fd291a9b9c0654d2cc877c812abc740319e8d4",
      "parents": [
        "fd2a942a07401b0a0fa5f3d73841026da2348220"
      ],
      "author": {
        "name": "Joseph Cheng",
        "email": "joseph.cheng@imgtec.com",
        "time": "Mon Jan 24 14:57:07 2022 +0800"
      },
      "committer": {
        "name": "Joseph Cheng",
        "email": "josephchengimg@gmail.com",
        "time": "Mon Jan 24 09:11:25 2022 +0000"
      },
      "message": "opengl: tests: Add explict android:exported flag to manifests\n\nAfter Android S+, it\u0027s required to add android:exported flag on manifests\nif an intent filter is defined[1]. However, it\u0027s missing on the\nmanifests of these opengl tests which are targeting to current sdk\nversion leads to installation failures for these APKs. Fix it by adding\nrequired android:exported flag.\n\n[1]: https://android.googlesource.com/platform/frameworks/base/+/c4e90ac06ad3e0fd2af9e3864742e2d1199a8cdd\n\nTest: These APKs are installed successfully on Android 12 devices.\n\nBug: 215940253\nChange-Id: Ia95a46cc55103e7f075900acd237b41699f4cbd0\n"
    },
    {
      "commit": "6ddaa7ae121d42d87bf65b9ee2f6a11f4c1825f9",
      "tree": "cacbf57b11da3fd68f95bf6a04c152d87a1a435a",
      "parents": [
        "ec931fedcfacf03773d396812c6cd48eca291054",
        "cb45fe73b996d4e35589e9fc163a30d7e0fc6234"
      ],
      "author": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Fri Dec 10 13:49:39 2021 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 10 13:49:39 2021 +0000"
      },
      "message": "Merge changes from topics \"GL_screen_decor\", \"VK_screen_decor\"\n\n* changes:\n  Expose VK_FORMAT_R8_UNORM swapchain format if supported by underlying system\n  Interpret the new R8 EGLConfig properly\n"
    },
    {
      "commit": "98366caa179b71dd4105900ed06fb2f4c53a65c1",
      "tree": "05d1df7b9d480b1795d9e21482c90d53d1a7f440",
      "parents": [
        "4d2588545fe9eee49a1ad5edeb4ff1c33e8081c0"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Tue Nov 30 11:47:44 2021 -0500"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Mon Dec 06 15:27:30 2021 -0500"
      },
      "message": "Interpret the new R8 EGLConfig properly\n\nDepends on I45993488808457b9a1ea03e9c4a46253d5b45df0 and\nI93a20ef8eb7d73b843e002d84d9fe53240a67c59.\n\nBug: 193170859\nTest: TODO\nChange-Id: I2948e6a225703d377f9b243089d661bb7522bb3d\n"
    },
    {
      "commit": "61219af78f72de5bd915a206911a8a649f14e290",
      "tree": "7b3feea4627f4ea1f00b67aea64daaf11acc8b4c",
      "parents": [
        "26c6a3e0f669441e945d55fc96667a081969487f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 06 17:18:06 2021 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Dec 06 17:18:08 2021 +0000"
      },
      "message": "Fix typo.\n\nBug: https://issuetracker.google.com/209348466\nChange-Id: I1d9f6bcc56ec7bf60a57eba8ec500fea2db135eb\n"
    },
    {
      "commit": "26c6f83a0aab040106d2f16d986a8bbf4c575ba3",
      "tree": "8ed85042586485ea6b9e2d3914692cbb27e01ec3",
      "parents": [
        "2c34aa61d2dd27af17caad61824c8f80bb5850ec"
      ],
      "author": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Fri Apr 02 12:29:08 2021 -0700"
      },
      "committer": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Tue Jun 15 15:59:25 2021 -0700"
      },
      "message": "Avoid trying to disconnect twice with ANGLE\n\nThe Vulkan runtime makes all the native_window_* calls\nwhen running with ANGLE.\n\nNoticed while debugging b/184280023.\n\nBug: b/154237217\nTest: MixedDeviceOwnerTest on Cuttlefish w/ SwANGLE\nChange-Id: Ie7c5ebcedf6eb0c23fdd1223c0ef866d4a2d9944\n"
    },
    {
      "commit": "84ff7b2ad9c20d50a45d2e34fa159650ba537e79",
      "tree": "f1b77d9c4bb639541a67fb869e0b51f647162e5a",
      "parents": [
        "3acce53a18d77add3743a1496c1f4db061d742a2"
      ],
      "author": {
        "name": "rnlee",
        "email": "rnlee@google.com",
        "time": "Thu Jun 03 15:41:25 2021 -0700"
      },
      "committer": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Fri Jun 04 21:42:08 2021 +0000"
      },
      "message": "eglSurfaceAttrib EGL_TIMESTAMPS_ANDROID non-window surface fix.\n\nThe spec says:\n\"If attribute is EGL_TIMESTAMPS_ANDROID, then values specifies whether\nto enable/disable timestamp collection for this surface. A value of\nEGL_TRUE enables timestamp collection, while a value of EGL_FALSE\ndisables it. The initial value is false. If surface is not a window\nsurface this has no effect.\"\n\nSetting an error is considered a side effect, so return\nEGL_TRUE for EGL_TIMESTAMPS_ANDROID attribute.\n\nBUG: 174481138\nTest: APK b/174481138#comment1, `adb logcat *:E -e egl` no error\nChange-Id: Ia6f04126bd3dead47648a1c71f7100224f28553d\n"
    },
    {
      "commit": "66738715f520c139b71233e178b1cdf50665e4f6",
      "tree": "6416764c84150afd10dafddf8658eb2c0c29d5aa",
      "parents": [
        "d13f6c41cea6dfa4fe425cdafd7c747cfcc319c2",
        "4078d3da96f508441b8a9ac98d35f36c5ee22069"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 28 02:52:10 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Apr 28 02:52:10 2021 +0000"
      },
      "message": "Merge \"Remove llndk_headers module\" am: aaf8e170a6 am: b86e54d22b am: 4078d3da96\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1687409\n\nChange-Id: I0e3816057ecd94461f7e291fc9033b98bc8b9dc3\n"
    },
    {
      "commit": "a24adb14a2af5497caeec8e74ee9962ff04c64f9",
      "tree": "e278729990e08da66fc6fe3506e2e9111b72b972",
      "parents": [
        "5a1c12c0d1bede8deee91799f5ba6fc81e00e36c",
        "d4dfe6ffcb72f9aedc0bf69a7790f0b45d217eb5"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Apr 27 02:25:02 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Apr 27 02:25:02 2021 +0000"
      },
      "message": "Merge \"Replace llndk_library with llndk clause in cc_library\" am: b962746880 am: 6a34a736ab am: d4dfe6ffcb\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1684009\n\nChange-Id: I25715d0af7d5cf74bd283947ba9378e2f27d4ef2\n"
    },
    {
      "commit": "ed0e6e63ad09850402e278e03bb44e61c16a783e",
      "tree": "97181072e213cb8c7d329a556eade3131839d107",
      "parents": [
        "b9627468805c0af3f2492f597a61ae6f2f339d27"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Apr 26 17:19:59 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Apr 26 17:43:42 2021 -0700"
      },
      "message": "Remove llndk_headers module\n\nUse a cc_library_headers module with llndk.llndk_headers: true instead\nof an llndk_headers module.\n\nBug: 170784825\nTest: m checkbuild\nTest: compare out/soong/build.ninja\nChange-Id: I6717ab613adde20652f6e861ca7179e202e63a83\n"
    },
    {
      "commit": "0394364349b00803703a821cfb26673424f63400",
      "tree": "5ba911c392db4b70990024a577e23727d51c2137",
      "parents": [
        "39301eae39ed29d0c38a8956243c1dffea08158b"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 21 16:47:25 2021 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Apr 22 16:40:11 2021 -0700"
      },
      "message": "Replace llndk_library with llndk clause in cc_library\n\nRemove the vestigial llndk_library modules and replace them with\nproperties in the llndk clause of the implementation cc_library.\n\nBug: 170784825\nTest: m checkbuild\nTest: compare out/soong/build.ninja\nChange-Id: Ic4a19a87c64e29c10c550e3b891859559bcb5324\n"
    },
    {
      "commit": "f45791522f7009f8281415883767185e93473f60",
      "tree": "78764c6227ef800be68d8db3c89cbf1444a708b2",
      "parents": [
        "fe3e277b1ef40de516b9bb4c60974f80c896b758",
        "1f7faec710d0c11825d7620c4a372e9b3d75d847"
      ],
      "author": {
        "name": "Tim Van Patten",
        "email": "timvp@google.com",
        "time": "Wed Mar 10 05:17:10 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Mar 10 05:17:10 2021 +0000"
      },
      "message": "Merge \"Add timvp to opengl/OWNERS\" am: 8d88407f02 am: c5480f300f am: 1f7faec710\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1624739\n\nMUST ONLY BE SUBMITTED BY AUTOMERGER\n\nChange-Id: I68e83660058fe618ba6fba9dbfcf202a50a55c9c\n"
    },
    {
      "commit": "a7836eb3ded16ace0f1fe4a8596184b081daa48b",
      "tree": "66228f61c104189c9cb92250ce8e925044eab309",
      "parents": [
        "9798fcd01f98fe57ab0c7553b8bed40eb13f9201",
        "397d02d1ec441f14515e807bd0828ceddbcb1d56"
      ],
      "author": {
        "name": "Yiwei Zhang",
        "email": "zzyiwei@google.com",
        "time": "Tue Mar 09 19:43:15 2021 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 09 19:43:15 2021 +0000"
      },
      "message": "Merge \"Update OWNERS files\" am: 3e408369ff am: 00e0bf8fca am: 397d02d1ec\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1623122\n\nMUST ONLY BE SUBMITTED BY AUTOMERGER\n\nChange-Id: I2eb7f5e7d3a70bfb6e50034ea18b2a43370ceedf\n"
    },
    {
      "commit": "c80061b6de96e3dfc8e94bb324f82c9a2af68ac6",
      "tree": "243398312537060d7f23434c5c94862a5f5f813e",
      "parents": [
        "3e408369ff6e5d31f5b47982fccb7ad437e3c247"
      ],
      "author": {
        "name": "Tim Van Patten",
        "email": "timvp@google.com",
        "time": "Tue Mar 09 11:42:28 2021 -0700"
      },
      "committer": {
        "name": "Tim Van Patten",
        "email": "timvp@google.com",
        "time": "Tue Mar 09 11:44:49 2021 -0700"
      },
      "message": "Add timvp to opengl/OWNERS\n\naosp/1623124 recently updated the OWNERS file for GraphicsEnvironment\nto point to opengl/OWNERS, rather than listing owners directly. This CL\nadds timvp@, since he was listed previously.\n\nTest: build\nChange-Id: Ibb375cce8b860c38f61cf563ae632a90101bb0e5\n"
    },
    {
      "commit": "b12a8ad6ff4e63523cf81426a60b9bedb421e6e9",
      "tree": "d8c44109e18f3b096856e692e2bfa7b51089e187",
      "parents": [
        "5dc18f28e3630fd66253b17c167b115f052f752f"
      ],
      "author": {
        "name": "Yiwei Zhang",
        "email": "zzyiwei@google.com",
        "time": "Tue Mar 09 07:53:55 2021 +0000"
      },
      "committer": {
        "name": "Yiwei Zhang",
        "email": "zzyiwei@google.com",
        "time": "Tue Mar 09 07:59:44 2021 +0000"
      },
      "message": "Update OWNERS files\n\nlibs/graphicsenv/OWNERS\nopengl/OWNERS\nservices/gpuservice/OWNERS\nservices/surfaceflinger/TimeStats/OWNERS\n\nTest: build\nChange-Id: Ib828a7ce8000c74b61f9ecef4a2f0bdf4ce31c0a\n"
    },
    {
      "commit": "5384962519bd277ea3a57b939525ac235fe0ba61",
      "tree": "2f8d356bb3cc0e1918cc026f27a2858458e4bff0",
      "parents": [
        "9a8bd42d5890e9ddaba0abda17294000db0ee001"
      ],
      "author": {
        "name": "Tim Van Patten",
        "email": "timvp@google.com",
        "time": "Tue Mar 02 19:24:29 2021 -0700"
      },
      "committer": {
        "name": "Tim Van Patten",
        "email": "timvp@google.com",
        "time": "Fri Mar 05 21:23:14 2021 +0000"
      },
      "message": "Read ro.hardware.egl for ANGLE\u0027s filename\n\nThe ANGLE shared object filename is currently hardcoded to\nlibGLESv2_angle.so, which prevents OEMs from specifying their own\nfilename when using ANGLE as the default OpenGL ES driver.\n\nThis CL updates initializeAnglePlatform() to build the ANGLE library\nfilename using the suffix specified by ro.hardware.egl when loading\nANGLE as the default OpenGL ES driver.\n\nThe filename when loading ANGLE from an APK will remain\nlibGLESv2_angle.so, for compatibilty reasons. This enforces naming\nconventions when loading ANGLE APKs on to the device, regardless of the\nname of the built-in version of ANGLE.\n\nBug: 178871212\nTest: Build and launch CF\nMerged-In: I462e076fc500d84fa2a27abfa491f82db4a9df80\nChange-Id: I59805445fd101707bda867d29c23a25e24f173d8\n"
    },
    {
      "commit": "0222871bc87d9e844315d8a40df4a84f36665ca2",
      "tree": "f7460e935a221cf5a77d523fd7d83acd685c1f61",
      "parents": [
        "7a2cfcbcb48f8d2115a9695e5f492b873daa288f"
      ],
      "author": {
        "name": "Tim Van Patten",
        "email": "timvp@google.com",
        "time": "Tue Mar 02 19:24:29 2021 -0700"
      },
      "committer": {
        "name": "Tim Van Patten",
        "email": "timvp@google.com",
        "time": "Thu Mar 04 10:43:29 2021 -0700"
      },
      "message": "Read ro.hardware.egl for ANGLE\u0027s filename\n\nThe ANGLE shared object filename is currently hardcoded to\nlibGLESv2_angle.so, which prevents OEMs from specifying their own\nfilename when using ANGLE as the default OpenGL ES driver.\n\nThis CL updates initializeAnglePlatform() to build the ANGLE library\nfilename using the suffix specified by ro.hardware.egl when loading\nANGLE as the default OpenGL ES driver.\n\nThe filename when loading ANGLE from an APK will remain\nlibGLESv2_angle.so, for compatibilty reasons. This enforces naming\nconventions when loading ANGLE APKs on to the device, regardless of the\nname of the built-in version of ANGLE.\n\nBug: 178871212\nTest: Build and launch CF\nChange-Id: I462e076fc500d84fa2a27abfa491f82db4a9df80\n"
    },
    {
      "commit": "11fada7928166f7cf6f6ffb4543f606994ab30fa",
      "tree": "4c8c47e876594a5c5c9b8c9adbec818413fcb307",
      "parents": [
        "6a09516b003e75a8b66c7f10133031557cb7d3a0"
      ],
      "author": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Wed Feb 24 14:33:31 2021 -0800"
      },
      "committer": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Tue Mar 02 15:57:49 2021 +0000"
      },
      "message": "Load ANGLEResetDisplayPlatform via dlsym\n\n... which is slightly more defensive than loading the function via\neglGetProcAddress. When loading the function via eglGetProcAdress,\nthe returned function pointer will be one of the ext forwardering\nhelpers (__glExtFwd0 in this observed case). The process can then\ncrash if eglTerminate() is called on a new thread that has not yet\ncalled eglMakeCurrent() where the thread local gl_hooks_t is 0x0.\n\nBug: b/181162754\nTest: HeifWriterTest on Cuttlefish w/ SwANGLE\nChange-Id: Ieebea08184e63321abbeccf41d1fdaf10e62ca2b\nMerged-In: Ia8e55c899f9fde91215ce75313b33517f8440fee\n"
    },
    {
      "commit": "86d048d6f0d02e568fd1f1360d13db2b3fc9d049",
      "tree": "fb560d81b4ec0a9f6ef417f8d7bccbc4af6ebe4e",
      "parents": [
        "8fafd5dc0deb392ce05e66950c53cc574da39fa0",
        "e6c909761fd7bc967e298c5b9bed1ad638f995b4"
      ],
      "author": {
        "name": "Jason Macnak",
        "email": "natsu@google.com",
        "time": "Mon Mar 01 22:32:42 2021 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 01 22:32:42 2021 +0000"
      },
      "message": "Merge \"Load ANGLEResetDisplayPlatform via dlsym\" into sc-dev"
    },
    {
      "commit": "3306e497c5b6c85164713032de0c789d5a118f89",
      "tree": "49d03f9512073b8dd90e517e605d8d627d3aa26c",
      "parents": [
        "671994c80bad8c58d6b79ee94e0b1eae26423b2a"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Thu Feb 25 15:35:37 2021 -0800"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Thu Feb 25 15:35:37 2021 -0800"
      },
      "message": "[LSC] Add LOCAL_LICENSE_KINDS to frameworks/native\n\nAdded SPDX-license-identifier-Apache-2.0 to:\n  cmds/atrace/Android.bp\n  cmds/bugreport/Android.bp\n  cmds/bugreportz/Android.bp\n  cmds/cmd/Android.bp\n  cmds/dumpstate/Android.bp\n  cmds/dumpsys/Android.bp\n  cmds/dumpsys/tests/Android.bp\n  cmds/flatland/Android.mk\n  cmds/idlcli/Android.bp\n  cmds/installd/Android.bp\n  cmds/installd/tests/Android.bp\n  cmds/ip-up-vpn/Android.mk\n  cmds/lshal/Android.bp\n  cmds/lshal/libprocpartition/Android.bp\n  cmds/rawbu/Android.bp\n  cmds/rss_hwm_reset/Android.bp\n  cmds/service/Android.bp\n  cmds/servicemanager/Android.bp\n  cmds/surfacereplayer/Android.bp\n  cmds/surfacereplayer/proto/Android.bp\n  cmds/surfacereplayer/replayer/Android.bp\n  data/etc/Android.bp\n  libs/adbd_auth/Android.bp\n  libs/android_runtime_lazy/Android.bp\n  libs/arect/Android.bp\n  libs/attestation/Android.bp\n  libs/attestation/tests/Android.bp\n  libs/binder/Android.bp\n  libs/binder/ndk/Android.bp\n  libs/binder/ndk/tests/Android.bp\n  libs/binder/parcel_fuzzer/Android.bp\n  libs/binder/rust/Android.bp\n  libs/binder/rust/tests/Android.bp\n  libs/binder/tests/Android.bp\n  libs/binder/tests/fuzzers/Android.bp\n  libs/binderdebug/Android.bp\n  libs/binderdebug/tests/Android.bp\n  libs/binderthreadstate/1.0/Android.bp\n  libs/binderthreadstate/Android.bp\n  libs/bufferqueueconverter/Android.bp\n  libs/cputimeinstate/Android.bp\n  libs/diskusage/Android.bp\n  libs/dumputils/Android.bp\n  libs/fakeservicemanager/Android.bp\n  libs/ftl/Android.bp\n  libs/gralloc/types/Android.bp\n  libs/gralloc/types/fuzzer/Android.bp\n  libs/gralloc/types/tests/Android.bp\n  libs/graphicsenv/Android.bp\n  libs/gui/Android.bp\n  libs/gui/sysprop/Android.bp\n  libs/gui/tests/Android.bp\n  libs/incidentcompanion/Android.bp\n  libs/input/Android.bp\n  libs/input/tests/Android.bp\n  libs/math/Android.bp\n  libs/math/tests/Android.bp\n  libs/nativebase/Android.bp\n  libs/nativedisplay/Android.bp\n  libs/nativewindow/Android.bp\n  libs/nativewindow/tests/Android.bp\n  libs/renderengine/Android.bp\n  libs/renderengine/tests/Android.bp\n  libs/sensor/Android.bp\n  libs/sensor/tests/Android.bp\n  libs/sensorprivacy/Android.bp\n  libs/ui/Android.bp\n  libs/ui/tests/Android.bp\n  libs/ui/tools/Android.bp\n  libs/vibrator/Android.bp\n  libs/vibrator/fuzzer/Android.bp\n  libs/vr/libbroadcastring/Android.bp\n  libs/vr/libbufferhub/Android.bp\n  libs/vr/libbufferhubqueue/Android.bp\n  libs/vr/libbufferhubqueue/benchmarks/Android.bp\n  libs/vr/libbufferhubqueue/tests/Android.bp\n  libs/vr/libdisplay/Android.bp\n  libs/vr/libdvr/Android.bp\n  libs/vr/libdvr/tests/Android.bp\n  libs/vr/libdvrcommon/Android.bp\n  libs/vr/libpdx/Android.bp\n  libs/vr/libpdx/fuzz/Android.bp\n  libs/vr/libpdx_default_transport/Android.bp\n  libs/vr/libpdx_uds/Android.bp\n  libs/vr/libperformance/Android.bp\n  libs/vr/libvr_manager/Android.bp\n  libs/vr/libvrflinger/Android.bp\n  libs/vr/libvrflinger/tests/Android.bp\n  libs/vr/libvrsensor/Android.bp\n  opengl/libs/Android.bp\n  opengl/tests/EGLTest/Android.bp\n  opengl/tests/configdump/Android.bp\n  opengl/tests/fillrate/Android.bp\n  opengl/tests/filter/Android.bp\n  opengl/tests/finish/Android.bp\n  opengl/tests/gl2_basic/Android.bp\n  opengl/tests/gl2_cameraeye/Android.bp\n  opengl/tests/gl2_copyTexImage/Android.bp\n  opengl/tests/gl2_java/Android.bp\n  opengl/tests/gl2_jni/Android.bp\n  opengl/tests/gl2_yuvtex/Android.bp\n  opengl/tests/gl_basic/Android.bp\n  opengl/tests/gl_jni/Android.bp\n  opengl/tests/gl_perf/Android.bp\n  opengl/tests/gl_perfapp/Android.bp\n  opengl/tests/gl_yuvtex/Android.bp\n  opengl/tests/gldual/Android.bp\n  opengl/tests/gralloc/Android.bp\n  opengl/tests/hwc/Android.bp\n  opengl/tests/lib/Android.bp\n  opengl/tests/lighting1709/Android.bp\n  opengl/tests/linetex/Android.bp\n  opengl/tests/swapinterval/Android.bp\n  opengl/tests/testFramerate/Android.bp\n  opengl/tests/testLatency/Android.bp\n  opengl/tests/testPauseResume/Android.bp\n  opengl/tests/testViewport/Android.bp\n  opengl/tests/textures/Android.bp\n  opengl/tests/tritex/Android.bp\n  services/audiomanager/Android.bp\n  services/automotive/display/Android.bp\n  services/batteryservice/Android.bp\n  services/displayservice/Android.bp\n  services/gpuservice/Android.bp\n  services/gpuservice/bpfprogs/Android.bp\n  services/gpuservice/gpumem/Android.bp\n  services/gpuservice/gpustats/Android.bp\n  services/gpuservice/tests/unittests/Android.bp\n  services/gpuservice/tracing/Android.bp\n  services/inputflinger/Android.bp\n  services/inputflinger/benchmarks/Android.bp\n  services/inputflinger/dispatcher/Android.bp\n  services/inputflinger/host/Android.bp\n  services/inputflinger/reader/Android.bp\n  services/inputflinger/reporter/Android.bp\n  services/inputflinger/tests/Android.bp\n  services/powermanager/Android.bp\n  services/powermanager/benchmarks/Android.bp\n  services/powermanager/tests/Android.bp\n  services/schedulerservice/Android.bp\n  services/sensorservice/Android.bp\n  services/sensorservice/hidl/Android.bp\n  services/sensorservice/tests/Android.bp\n  services/stats/Android.bp\n  services/surfaceflinger/Android.bp\n  services/surfaceflinger/CompositionEngine/Android.bp\n  services/surfaceflinger/FrameTimeline/Android.bp\n  services/surfaceflinger/TimeStats/Android.bp\n  services/surfaceflinger/TimeStats/timestatsproto/Android.bp\n  services/surfaceflinger/layerproto/Android.bp\n  services/surfaceflinger/sysprop/Android.bp\n  services/surfaceflinger/tests/Android.bp\n  services/surfaceflinger/tests/fakehwc/Android.bp\n  services/surfaceflinger/tests/unittests/Android.bp\n  services/surfaceflinger/tests/vsync/Android.bp\n  services/surfaceflinger/tests/waitforvsync/Android.bp\n  services/utils/Android.bp\n  services/utils/tests/Android.bp\n  services/vibratorservice/Android.bp\n  services/vibratorservice/benchmarks/Android.bp\n  services/vibratorservice/test/Android.bp\n  services/vr/bufferhubd/Android.bp\n  services/vr/hardware_composer/Android.bp\n  services/vr/hardware_composer/aidl/Android.bp\n  services/vr/virtual_touchpad/Android.bp\n  vulkan/libvulkan/Android.bp\n  vulkan/nulldrv/Android.bp\n  vulkan/vkjson/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    SPDX-license-identifier-MIT SPDX-license-identifier-Unicode-DFS\n    legacy_notice\nto:\n  Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    SPDX-license-identifier-MIT legacy_notice\nto:\n  opengl/Android.bp\n  opengl/tests/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-BSD\n    legacy_notice\nto:\n  libs/vr/Android.bp\n\nAdded SPDX-license-identifier-Apache-2.0 SPDX-license-identifier-MIT\nto:\n  headers/Android.bp\n  services/vr/Android.bp\n  vulkan/Android.bp\n\nAdded SPDX-license-identifier-BSD SPDX-license-identifier-MIT\n    legacy_notice\nto:\n  opengl/tests/angeles/Android.bp\n\nAdded SPDX-license-identifier-MIT\nto:\n  services/vr/performanced/Android.bp\n\nBug: 68860345\nBug: 151177513\nBug: 151953481\n\nTest: m all\n\nExempt-From-Owner-Approval: janitorial work\nChange-Id: Icd397e38ca313ae4886bd92afa927d4633a75c4f\n"
    },
    {
      "commit": "a2a777386263118bdd758a9ff28c20216c0f3d09",
      "tree": "d58ebac7a3753ad04c75e2bbe470c0fc45a9d5e3",
      "parents": [
        "79e26e175fe62e1dc31a6f587a3a9f999db59db2"
      ],
      "author": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Thu Feb 25 11:46:30 2021 -0800"
      },
      "committer": {
        "name": "Bob Badour",
        "email": "bbadour@google.com",
        "time": "Thu Feb 25 11:49:26 2021 -0800"
      },
      "message": "Revert \"[LSC] Add LOCAL_LICENSE_KINDS to frameworks/native\"\n\nThis reverts commit f84491a4874f20653104f47622d7215521310526.\n\nThis reverts commit 2e6718529b3f3b55d310db6738e71255e9b74dee.\n\nChange-Id: I1a9655335b856d6909b27929e00c0bde3186d893\n"
    }
  ],
  "next": "e6c909761fd7bc967e298c5b9bed1ad638f995b4"
}
