)]}'
{
  "log": [
    {
      "commit": "f412b2b9fc04adade31a76185182d1debbc6edc1",
      "tree": "23166af3175face3d8c7f9881163aafbc9ca07e2",
      "parents": [
        "5e6abb3f0a4066722678ef91c0aec5d518389336",
        "c6033316b07615db91360559926459946efbd0f1"
      ],
      "author": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Wed Jun 21 17:53:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 21 17:53:07 2017 +0000"
      },
      "message": "Merge \"Add DVR method to get native display metrics\" into oc-dr1-dev"
    },
    {
      "commit": "5e6abb3f0a4066722678ef91c0aec5d518389336",
      "tree": "2a40ac08434a94217766bfc4eb57a630cbc0fdc2",
      "parents": [
        "9fbfad0b6dcda9a2b2c3913597aa24e4db7b3544",
        "61f8dfa24b0846ae66328891f8facf9e06237c15"
      ],
      "author": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Wed Jun 21 13:55:22 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 21 13:55:24 2017 +0000"
      },
      "message": "Merge \"Avoid SELinux violation at vndservicemanager\" into oc-dr1-dev"
    },
    {
      "commit": "9fbfad0b6dcda9a2b2c3913597aa24e4db7b3544",
      "tree": "cb5aec5c2ec679a60099b00ff550f0994bbd8214",
      "parents": [
        "989ed5c4c1be7e82070cc42043c3cb3d64d9de14"
      ],
      "author": {
        "name": "Jie Song",
        "email": "jies@google.com",
        "time": "Tue Jun 20 16:29:42 2017 -0700"
      },
      "committer": {
        "name": "Jie Song",
        "email": "jies@google.com",
        "time": "Tue Jun 20 16:29:42 2017 -0700"
      },
      "message": "dumpstate: Add the 2nd fd for binary file\n\nBug: 33820081\nTest: Verify binary file is added in bugreport\nChange-Id: Ibe1c219ca4bf288adcb76996c6178426a4d04333\n"
    },
    {
      "commit": "61f8dfa24b0846ae66328891f8facf9e06237c15",
      "tree": "35b3e20cab83276111254e8d529d6dc8cfb06274",
      "parents": [
        "e86f70b474a9007b07fe22d0731d2789a2dc2cc4"
      ],
      "author": {
        "name": "Kouji Shiotani",
        "email": "kouji.shiotani@sony.com",
        "time": "Tue Jun 13 15:40:54 2017 +0900"
      },
      "committer": {
        "name": "Martijn Coenen",
        "email": "maco@google.com",
        "time": "Tue Jun 20 16:09:09 2017 -0700"
      },
      "message": "Avoid SELinux violation at vndservicemanager\n\nAvoid following SELinux violation.\n\navc: denied { read } for comm\u003d\"vndservicemanag\"\nname\u003d\"nonplat_service_contexts\" dev\u003d\"rootfs\" ino\u003d17045\nscontext\u003du:r:vndservicemanager:s0\ntcontext\u003du:object_r:service_contexts_file:s0 tclass\u003dfile permissive\u003d0\nppid\u003d1 pcomm\u003d\"init\" pgid\u003d1 pgcomm\u003d\"init\"\n\nThis violation caused by vndservicemanager reading service_contexts at\nsvcmgr_handler(). In main() loading as well, processing is divided by\nthe VENDORSERVICEMANAGER flag. Therefore, even in svcmgr_handler(),\nprocessing is divided by flags like main().\n\nBug: 62562415\nTest: mma\nChange-Id: I06b0308a80fc6ea1ca57cd10d9555dd269b8e12d\n"
    },
    {
      "commit": "989ed5c4c1be7e82070cc42043c3cb3d64d9de14",
      "tree": "69b7cc34e7572fbfe75b57a811db1d785114faa0",
      "parents": [
        "e86f70b474a9007b07fe22d0731d2789a2dc2cc4",
        "1b02b6329e7a2e3ed60b2209abec1f70c33c3d18"
      ],
      "author": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Tue Jun 20 20:28:58 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 20 20:28:58 2017 +0000"
      },
      "message": "Merge \"surfaceflinger: fix a potential child layer leak\" into oc-dev\nam: 1b02b6329e\n\nChange-Id: Ie2bd5a6d1d37bb5b7c7b679b8c472389ff619188\n"
    },
    {
      "commit": "1b02b6329e7a2e3ed60b2209abec1f70c33c3d18",
      "tree": "072b1bc544c3a05b7a10141949589aaf32bc19c6",
      "parents": [
        "a17b14eb92f6c21a9cea97ed0ca30df74da9fc29",
        "fae51c438827ae0a55c1b83c0e9be348254bfbd4"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 20 20:15:29 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 20 20:15:30 2017 +0000"
      },
      "message": "Merge \"surfaceflinger: fix a potential child layer leak\" into oc-dev"
    },
    {
      "commit": "c6033316b07615db91360559926459946efbd0f1",
      "tree": "9022494c6f48a08fbe84333f9e1720d5272141b1",
      "parents": [
        "e86f70b474a9007b07fe22d0731d2789a2dc2cc4"
      ],
      "author": {
        "name": "Stephen Kiazyk",
        "email": "skiazyk@google.com",
        "time": "Fri Jun 09 14:26:31 2017 -0700"
      },
      "committer": {
        "name": "Santos Cordon",
        "email": "santoscordon@google.com",
        "time": "Tue Jun 20 18:49:31 2017 +0000"
      },
      "message": "Add DVR method to get native display metrics\n\nThis seems like the kind of infomration we should be able to communicate\nto vrcore.\n\nBug: 62494565\nTest: Builds and loads, still need to test with vrcore\nChange-Id: I2342fabcd2bcb8a34c0b783391b60defc381f3c6\n(cherry picked from commit 6c5a92f142b5fa1907ff91a7dce4d09ddcb554c6)\n"
    },
    {
      "commit": "e86f70b474a9007b07fe22d0731d2789a2dc2cc4",
      "tree": "03dff80de6d4c4f779e891780167e9883490bc51",
      "parents": [
        "5cf813eef05b0eb62e2b63860b167ef76663a9a0"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Jun 19 15:47:39 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Jun 19 15:48:51 2017 -0700"
      },
      "message": "Fix minor version bump reflected in lshal --init-vintf\n\nTest: lshal --init-vintf has no warnings, and power@1.1 / vibrator@1.1\n      is shown in output.\n\nBug: 62675393\nChange-Id: I1ffd8b6dc7fcadcf7228cf2b8838e918bb3afe6b\nMerged-In: I1ffd8b6dc7fcadcf7228cf2b8838e918bb3afe6b\n"
    },
    {
      "commit": "5cf813eef05b0eb62e2b63860b167ef76663a9a0",
      "tree": "db54c60572a538d220f28881e7406c7d88e11e78",
      "parents": [
        "c35a5e29f3c4c05041ac0f4a0bcbfe669d3d67bc",
        "97eda0c48f7c6d8c4f2808c36c39f540b4c1f182"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 19 21:27:01 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 19 21:27:03 2017 +0000"
      },
      "message": "Merge \"Fix incorrect bitness for lshal --init-vintf\" into oc-dr1-dev"
    },
    {
      "commit": "97eda0c48f7c6d8c4f2808c36c39f540b4c1f182",
      "tree": "0144abc28eee5213b52faff0f3899dc015ec2234",
      "parents": [
        "4bfb7550afa0d63806c5a3232ed3c1521183bffb"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Jun 19 12:27:08 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Mon Jun 19 12:34:19 2017 -0700"
      },
      "message": "Fix incorrect bitness for lshal --init-vintf\n\nTest: lshal --init-vintf, graphics.mapper has 32+64.\n\nChange-Id: Ic586c8333064cc5636679ce8ad4e1231307191f4\nMerged-In: Ic586c8333064cc5636679ce8ad4e1231307191f4\nFixes: 62675393\n"
    },
    {
      "commit": "c35a5e29f3c4c05041ac0f4a0bcbfe669d3d67bc",
      "tree": "7f5f05346183140b1dc3e2957ac3426358a198c9",
      "parents": [
        "05e6335833def242d3e53ed8fefeb0de35cd6a10",
        "a17b14eb92f6c21a9cea97ed0ca30df74da9fc29"
      ],
      "author": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Sat Jun 17 01:58:33 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Sat Jun 17 01:58:33 2017 +0000"
      },
      "message": "Merge changes from topic \u0027layer-wp-race\u0027 into oc-dev\nam: a17b14eb92\n\nChange-Id: I1af51f57255024d36e9cae5c221361f36cb28da4\n"
    },
    {
      "commit": "a17b14eb92f6c21a9cea97ed0ca30df74da9fc29",
      "tree": "55a0948aaa76e5d270540f7b39d5927f6ba2c80b",
      "parents": [
        "4e623e259c3e8677d57f761a3708423fb2e77e2a",
        "515dc9c538b8206b746eeb4906ac0b8aed1fb497"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jun 17 01:51:06 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jun 17 01:51:07 2017 +0000"
      },
      "message": "Merge changes from topic \u0027layer-wp-race\u0027 into oc-dev\n\n* changes:\n  surfaceflinger: Layer::getParent requires state lock held\n  surfaceflinger: distinguish mCurrentParent/mDrawingParent\n  surfaceflinger: protect Client::mParentLayer with a lock\n"
    },
    {
      "commit": "fae51c438827ae0a55c1b83c0e9be348254bfbd4",
      "tree": "376dbc36387cdf7bdedadcfffd0fbcb928f2b498",
      "parents": [
        "515dc9c538b8206b746eeb4906ac0b8aed1fb497"
      ],
      "author": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Thu Jun 15 12:53:59 2017 -0700"
      },
      "committer": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Fri Jun 16 16:30:05 2017 -0700"
      },
      "message": "surfaceflinger: fix a potential child layer leak\n\nWe should not remove a child layer from its already removed parent.\nCall p-\u003eremoveChild only after we\u0027ve checked that the ancestor is\nalive.\n\nApply e6b63e1ae12692327f7e46d5f10d6ade5a7bf192 and this fix to\nSurfaceFlinger_hwc1.cpp as well.\n\nBug: 37121786\nTest: manual stress test\nChange-Id: I7b811450a998acc4ad9690bd4eda058ce6588e14\n"
    },
    {
      "commit": "515dc9c538b8206b746eeb4906ac0b8aed1fb497",
      "tree": "0573868d5a84dbc8621012066a72afde8f8fae3f",
      "parents": [
        "e41dbe6ab1d412efd67fdc8344be8da8b19426d2"
      ],
      "author": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Thu Jun 15 12:53:59 2017 -0700"
      },
      "committer": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Fri Jun 16 16:29:28 2017 -0700"
      },
      "message": "surfaceflinger: Layer::getParent requires state lock held\n\nWe rely on mStateLock to synchronize accesses to\nLayer::mCurrentParent.\n\nBug: 38505866\nTest: manual stress test\nChange-Id: I5f8ec358ed7e35df28f8c6aec31ae6ee51cb5b93\n"
    },
    {
      "commit": "05e6335833def242d3e53ed8fefeb0de35cd6a10",
      "tree": "70a18b57762799178090631b4284abeb13a6bd0d",
      "parents": [
        "90254a8d57bb4912bf19787c6855399180af1915",
        "4e623e259c3e8677d57f761a3708423fb2e77e2a"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Fri Jun 16 23:24:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 16 23:24:47 2017 +0000"
      },
      "message": "Add method to explicitly create Surface.\nam: 4e623e259c\n\nChange-Id: I22ff0cd39e80478a74e4589084d5ccabfbe54443\n"
    },
    {
      "commit": "90254a8d57bb4912bf19787c6855399180af1915",
      "tree": "b497cb632930df3446517019fb0afa784d77b716",
      "parents": [
        "23970309e2e66cfc1f4048ae2b8b9e351049d1cc",
        "75ca86f072f82d38b21e0a13234ecbc2c24cb6ab"
      ],
      "author": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Fri Jun 16 22:45:37 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 16 22:45:38 2017 +0000"
      },
      "message": "Merge \"libui: Load a.h.graphics.mapper passthrough service on library load\" into oc-dr1-dev"
    },
    {
      "commit": "23970309e2e66cfc1f4048ae2b8b9e351049d1cc",
      "tree": "80284ea6867351342d751123d92202d5baabdf69",
      "parents": [
        "22c1462add2567fffc6910b120c93b6074f2641b",
        "b2990034866e4f2cce6166b1c1d77dec27770686"
      ],
      "author": {
        "name": "Kevin Schoedel",
        "email": "kpschoedel@google.com",
        "time": "Fri Jun 16 20:56:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 16 20:56:34 2017 +0000"
      },
      "message": "Merge \"Fix virtual touchpad scroll events.\" into oc-dr1-dev"
    },
    {
      "commit": "4e623e259c3e8677d57f761a3708423fb2e77e2a",
      "tree": "f26ea88c3e0304ccf81703c1f10b86b4427adf52",
      "parents": [
        "c175253b6d0738aec6235ef1c2e723ad36fcd346"
      ],
      "author": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Fri Jun 16 07:06:17 2017 -0700"
      },
      "committer": {
        "name": "Bryce Lee",
        "email": "brycelee@google.com",
        "time": "Fri Jun 16 12:33:02 2017 -0700"
      },
      "message": "Add method to explicitly create Surface.\n\nIt is sometimes necessary for a SurfaceControl client to request the\nassociated Surface object be created rather than reuse the cached\nvalue. This changelist adds an additional method that performs the\nsame creation operations as if the Surface object was created for the\nfirst time.\n\nBug: 62108743\nTest: go/wm-smoke\nChange-Id: I2f460f20b2d16ed9ff81cb36842bcd2f8641e03c\n"
    },
    {
      "commit": "e41dbe6ab1d412efd67fdc8344be8da8b19426d2",
      "tree": "380362fda9c3bcd9d891818065d96dac4f1387fb",
      "parents": [
        "f456f32e0f9292d71b57b3255cde416b677faac2"
      ],
      "author": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Tue Jun 13 14:10:56 2017 -0700"
      },
      "committer": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Fri Jun 16 10:54:51 2017 -0700"
      },
      "message": "surfaceflinger: distinguish mCurrentParent/mDrawingParent\n\nUpdates to wp\u003c\u003e is not atomic.  We cannot use/update it at the same\ntime from the main thread and a binder thread.  With this change,\nbinder threads use mCurrentParent with the external state lock held.\nThe main thread uses mDrawingParent.\n\nThis is also an alternative fix to bug 62099658 and allows us to\nrevert \"SurfaceFlinger: Update parent pointer while performing\ntransaction.\"\n\nBug: 38505866\nBug: 62099658\nTest: boots and no repro (but I can never repro)\nChange-Id: Id286a437537daaeec5eee5de62b1d9df245ece53\n"
    },
    {
      "commit": "f456f32e0f9292d71b57b3255cde416b677faac2",
      "tree": "a61104135cac53201dc17491bdd5737c9df80e30",
      "parents": [
        "c175253b6d0738aec6235ef1c2e723ad36fcd346"
      ],
      "author": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Thu Jun 15 14:01:18 2017 -0700"
      },
      "committer": {
        "name": "Chia-I Wu",
        "email": "olv@google.com",
        "time": "Fri Jun 16 10:54:50 2017 -0700"
      },
      "message": "surfaceflinger: protect Client::mParentLayer with a lock\n\nUpdates to wp\u003c\u003e is not atomic.  Use Client::mLock to protect\nmParentLayer.\n\nBug: 38505866\nTest: camera and youtube work\nChange-Id: I2739382d5bb99961a47c1011963b6f676d34eec6\n"
    },
    {
      "commit": "b2990034866e4f2cce6166b1c1d77dec27770686",
      "tree": "a8e4430aec5cb98ec156272e5d6bb8c200df0b79",
      "parents": [
        "b209c12155da92f2756c016eda55636c1d8952c1"
      ],
      "author": {
        "name": "Kevin Schoedel",
        "email": "kpschoedel@google.com",
        "time": "Thu Jun 15 11:21:13 2017 -0400"
      },
      "committer": {
        "name": "Kevin Schoedel",
        "email": "kpschoedel@google.com",
        "time": "Fri Jun 16 17:29:58 2017 +0000"
      },
      "message": "Fix virtual touchpad scroll events.\n\n1. Correctly configure the uinput device to pass REL_*WHEEL events.\n\n2. Configure the virtual touchpad as a \u0027rotary encoder\u0027, which is\n   an inputflinger device class originally provided for the G1 scroll\n   ball. This provides two advantages over the default mouse-wheel\n   interpretation:\n   - It works without an associated mouse pointer to determine the\n     event target.\n   - It allows for higher resolution through a scale factor (the\n     scaling here is chosen by experiment to feel no worse than wheel\n     mode, but might benefit from future adjustment).\n   There is one accompanying disadvantage: inputflinger only handles\n   vertical scrolling (REL_WHEEL) and ignores the horizontal axis\n   (REL_HWHEEL).\n\nBug: 62632827\nTest: manual on sailfish\nChange-Id: Ic8edad01796d75e8c94fa20f05a5badb0727a948\n"
    },
    {
      "commit": "75ca86f072f82d38b21e0a13234ecbc2c24cb6ab",
      "tree": "bd890d4e9dfcf65a21736fa393658e441fdbc3be",
      "parents": [
        "4bfb7550afa0d63806c5a3232ed3c1521183bffb"
      ],
      "author": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Wed Jun 07 14:44:46 2017 -0700"
      },
      "committer": {
        "name": "Jesse Hall",
        "email": "jessehall@google.com",
        "time": "Fri Jun 16 00:48:25 2017 +0000"
      },
      "message": "libui: Load a.h.graphics.mapper passthrough service on library load\n\nZygote loads libui, this helps complete the chain from\n  zygote -\u003e libui -\u003e a.h.graphics.mapper -\u003e gralloc\nso that all of these libraries which are used by nearly every app are\nloaded by zygote and shared.\n\nBug: 62353585\nTest: boot to launcher, run calculator, confirm a.h.graphics.mapper\n      implementation library is in /proc/`pid zygote64`/maps\n\nChange-Id: Ib505c926a410191e3e2ad809bfe98a73b21fac90\n"
    },
    {
      "commit": "22c1462add2567fffc6910b120c93b6074f2641b",
      "tree": "8a6845a2980082129f4a52699f669c9757c0d60f",
      "parents": [
        "4bfb7550afa0d63806c5a3232ed3c1521183bffb"
      ],
      "author": {
        "name": "Stephen Kiazyk",
        "email": "skiazyk@google.com",
        "time": "Thu Jun 15 15:53:59 2017 -0700"
      },
      "committer": {
        "name": "Stephen Kiazyk",
        "email": "skiazyk@google.com",
        "time": "Thu Jun 15 23:28:28 2017 +0000"
      },
      "message": "Set the vr hwc vsync rate to match the native vsync\n\nThis simple modification reduces the motopho latency from 85ms to 65ms.\nHowever, this is not a final solution, and we should continue to look\nfor how to address the issue of difference in vsync reporting.\n\nBug: 36493906\nTest: Run motopho, latency is now much lower.\nChange-Id: Id52689900a5fe58dfc9d7790b7c3746903380972\n"
    },
    {
      "commit": "4bfb7550afa0d63806c5a3232ed3c1521183bffb",
      "tree": "3fd90c6f32626cca579972a00d0876fbd887e010",
      "parents": [
        "de65cb8e1fa8b15815ff7af9602797b6bc54a8b4",
        "2ddf567064b5c307bec097293e40ac4eeb8f4b49"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jun 15 21:35:32 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 15 21:35:33 2017 +0000"
      },
      "message": "Merge \"Fix vr flinger post thread to resume correctly\" into oc-dr1-dev"
    },
    {
      "commit": "2ddf567064b5c307bec097293e40ac4eeb8f4b49",
      "tree": "4fdf83215fe2a77e2bfa3cd8f24802c389da08d7",
      "parents": [
        "b209c12155da92f2756c016eda55636c1d8952c1"
      ],
      "author": {
        "name": "Steven Thomas",
        "email": "steventhomas@google.com",
        "time": "Thu Jun 15 11:38:40 2017 -0700"
      },
      "committer": {
        "name": "Steven Thomas",
        "email": "steventhomas@google.com",
        "time": "Thu Jun 15 12:31:00 2017 -0700"
      },
      "message": "Fix vr flinger post thread to resume correctly\n\nAfter being paused, the vr flinger post thread remained paused until it\nwas enabled by requesting display ownership, but the request for display\nownership was made from the vr flinger post thread, causing the post\nthread to get stuck in the paused state forever. I moved the display\nownership request to the vr flinger dispatcher thread, so the post\nthread can be resumed.\n\nBug: 62666511\n\nTest: Put a device through a sleep/wake cycle and confirmed the vr\nflinger post thread resumes as expected.\n\nChange-Id: Ic57adb7376c8f2b5760bfaa4a5a30b58894a7ab7\n"
    },
    {
      "commit": "de65cb8e1fa8b15815ff7af9602797b6bc54a8b4",
      "tree": "2540f70300af2d7ffad76a009ad4be9da7136d77",
      "parents": [
        "d8449e55a6461802514e3bd62e90e72070d3ffb4",
        "78f71fe71d9fcbaed1270b902c9f3a2bf14c37f3"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jun 15 18:47:18 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 15 18:47:19 2017 +0000"
      },
      "message": "Merge \"Use _exit for profile copy dexopt command\" into oc-dr1-dev"
    },
    {
      "commit": "d8449e55a6461802514e3bd62e90e72070d3ffb4",
      "tree": "a4b175ec36300d1df6fc3f64a2802b229a2cd10d",
      "parents": [
        "b209c12155da92f2756c016eda55636c1d8952c1",
        "c175253b6d0738aec6235ef1c2e723ad36fcd346"
      ],
      "author": {
        "name": "Alistair Strachan",
        "email": "alistair.strachan@imgtec.com",
        "time": "Thu Jun 15 17:30:19 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 15 17:30:19 2017 +0000"
      },
      "message": "Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode.\nam: c175253b6d\n\nChange-Id: I55ca473facef90f00eb1a401d9bc8ad7a36e4878\n"
    },
    {
      "commit": "c175253b6d0738aec6235ef1c2e723ad36fcd346",
      "tree": "4727c105293e239028eae5a7ce5a77b7e6b101e4",
      "parents": [
        "fd43dc6723e721c41fb5e0d84258672a036cc006"
      ],
      "author": {
        "name": "Alistair Strachan",
        "email": "alistair.strachan@imgtec.com",
        "time": "Wed Jun 07 16:34:44 2017 -0700"
      },
      "committer": {
        "name": "Fabien Sanglard",
        "email": "sanglardf@google.com",
        "time": "Thu Jun 15 00:44:01 2017 +0000"
      },
      "message": "Fix getDisplayInfo() for SurfaceFlinger in HWC2 mode.\n\nWhen HWC2 mode is enabled in SurfaceFlinger, the getDisplayInfo()\nfunction would fail to return the correct active mode in some cases.\n\nThis bug was only noticable if you had more than one mode registered\nby the HWC2 backend.\n\nThe SurfaceComposerClient::getDisplayInfo() function works by calling\ngetDisplayConfigs(), and de-referencing the config at the index\nreturned by getActiveConfig(). The active config returned was correct,\nbut the getDisplayConfigs() array was not properly sorted.\n\nTracing this back, this problem occurs because the configId is stored\nalongside the config in an unordered_map, so when this is converted\nto a vector and the configId is discarded, the conversion must be\nsorted correctly; it can\u0027t just be the hash order returned from\nthe unordered_map.\n\nThere are a few ways to fix this problem, but the easiest was to nip\nthe problem in the bud by not allowing an unsorted list of configs\nto exist on the base HWC2 class. It may be better still to just get\nrid of the map and go back to a vector, as this data is more often\nused as an array than it is indexed by configId, so the use of an\nunordered_map was probably overkill.\n\nChange-Id: Ibfb015a6d9b49c870f37a1c892f15f90abbd1e2c\nBug: 62617569\nTest: ./cts-tradefed run cts -m CtsViewTestCases -t android.view.cts.DisplayRefreshRateTest#testRefreshRate\n"
    },
    {
      "commit": "78f71fe71d9fcbaed1270b902c9f3a2bf14c37f3",
      "tree": "c082f7eba0f6b938f24cb145bb6d9153cc5121a8",
      "parents": [
        "b209c12155da92f2756c016eda55636c1d8952c1"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 14 13:02:26 2017 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jun 14 15:35:37 2017 -0700"
      },
      "message": "Use _exit for profile copy dexopt command\n\nPreviously we used exit(0), but this called global destructors and\ncould cause problems depending on the state when the forking\nhappened.\n\nUsing _exit avoids calling hte global destructors in the child\nprocess.\n\nTest: Delete packages.xml and flash to simulate first boot\nBug: 62597429\nChange-Id: I3a6dcd5f05ca85e1488df154ec283c2ec842e59f\n"
    },
    {
      "commit": "b209c12155da92f2756c016eda55636c1d8952c1",
      "tree": "5cbd5b95507d052a2f1a1bb7d6f0ac57e5779c3a",
      "parents": [
        "91768a2bfe0bea433a93a4c98151eec011329414",
        "fd43dc6723e721c41fb5e0d84258672a036cc006"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 14 08:13:01 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 14 08:13:01 2017 +0000"
      },
      "message": "Merge changes Ibc1444b8,I14c200d1 into oc-dev\nam: fd43dc6723\n\nChange-Id: Iae111bcc2770c1e75aba29021e31d07ff89243ab\n"
    },
    {
      "commit": "fd43dc6723e721c41fb5e0d84258672a036cc006",
      "tree": "e966c89782519c17878f644b51a72ccba5c3a34a",
      "parents": [
        "638055ef41f6d248290c8867dd85c8a4690fa584",
        "c6ff79830b9126f948791f03164a58ad079e9e5d"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Wed Jun 14 08:09:40 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 14 08:09:42 2017 +0000"
      },
      "message": "Merge changes Ibc1444b8,I14c200d1 into oc-dev\n\n* changes:\n  ConsumerBase: discardFreeBuffers() also needs to dump its own cache\n  BufferQueueProducer: Call onBuffersReleased() in detachNextBuffer\n"
    },
    {
      "commit": "91768a2bfe0bea433a93a4c98151eec011329414",
      "tree": "54b178af66fcb57fc847a0f2432c57cbd273cc41",
      "parents": [
        "fc045b9de40eb3701438df6be2275abba619ce14",
        "638055ef41f6d248290c8867dd85c8a4690fa584"
      ],
      "author": {
        "name": "Peng Xu",
        "email": "pengxu@google.com",
        "time": "Wed Jun 14 06:20:52 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 14 06:20:52 2017 +0000"
      },
      "message": "Merge changes from topic \u0027sensor_looper_crash\u0027 into oc-dev\nam: 638055ef41\n\nChange-Id: I774229e9c84e7b390861638e478e2330b66c3d57\n"
    },
    {
      "commit": "fc045b9de40eb3701438df6be2275abba619ce14",
      "tree": "23f1608d0cfc25ec19fe9240cb68987ecc00cf0a",
      "parents": [
        "401b0f43eed85dfbf4d91ef3a684509dc59f2c69",
        "09034f076e7897732479c8aef6284938aafbfbfe"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Jun 14 06:20:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 14 06:20:42 2017 +0000"
      },
      "message": "SensorManager: attach background thread to JavaVM\nam: 09034f076e\n\nChange-Id: I07364b649a58f9ca0891407540a607967155bf4b\n"
    },
    {
      "commit": "401b0f43eed85dfbf4d91ef3a684509dc59f2c69",
      "tree": "88c48fa2644565e1d958fa5a86ad505191f0b901",
      "parents": [
        "5af190c5172f3b2436b5d37f5d748940c0b50843",
        "542eace6bf9aa9cc4a2fff4886ff023b973232e2"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Wed Jun 14 06:20:31 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 14 06:20:31 2017 +0000"
      },
      "message": "Framework sensor manager init not depends on ::android::SensorManager.\nam: 542eace6bf  -s ours\n\nChange-Id: I846d806f4d135a8c353f10ea514a3cdedd22cd85\n"
    },
    {
      "commit": "638055ef41f6d248290c8867dd85c8a4690fa584",
      "tree": "18924fdb9c0d0e96804e00e32808aaa2ee09f1b6",
      "parents": [
        "922e418f4575c38556b4c217a18b7a79c5a8a8c8",
        "80d87ee386be7065817d4d40f2151dec9e0c557c"
      ],
      "author": {
        "name": "Peng Xu",
        "email": "pengxu@google.com",
        "time": "Wed Jun 14 06:12:37 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 14 06:12:43 2017 +0000"
      },
      "message": "Merge changes from topic \u0027sensor_looper_crash\u0027 into oc-dev\n\n* changes:\n  Fix race condition for SensorManager looper.\n  SensorManager: attach background thread to JavaVM\n  Framework sensor manager init not depends on ::android::SensorManager.\n"
    },
    {
      "commit": "80d87ee386be7065817d4d40f2151dec9e0c557c",
      "tree": "2d63602319b8b6e9c87494a1cdf3bfc15c529975",
      "parents": [
        "09034f076e7897732479c8aef6284938aafbfbfe"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Jun 13 18:04:25 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Jun 13 18:56:07 2017 -0700"
      },
      "message": "Fix race condition for SensorManager looper.\n\nBefore the fix there could be two background threads started for two\nloopers. Add a guard to prevent this from happening.\n\nTest: pass\nBug: 62404135\nChange-Id: I8230addaaa6b83670d7b83c96809b00fca95d352\n"
    },
    {
      "commit": "09034f076e7897732479c8aef6284938aafbfbfe",
      "tree": "455835dc2cb1ed5f7d5c61c3289d4a7b8085e763",
      "parents": [
        "542eace6bf9aa9cc4a2fff4886ff023b973232e2"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Jun 13 17:51:13 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Jun 13 18:56:06 2017 -0700"
      },
      "message": "SensorManager: attach background thread to JavaVM\n\nTest: pass\nBug: 62404135\n\nChange-Id: I63a128c3c933904211f5ff2483492674eaba93ed\n"
    },
    {
      "commit": "542eace6bf9aa9cc4a2fff4886ff023b973232e2",
      "tree": "3fe036312a11648ea62026512d78396f14237823",
      "parents": [
        "2563c0f3b0aa07309d42c0d739880884b8131080"
      ],
      "author": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue May 09 15:18:02 2017 -0700"
      },
      "committer": {
        "name": "Yifan Hong",
        "email": "elsk@google.com",
        "time": "Tue Jun 13 18:13:58 2017 -0700"
      },
      "message": "Framework sensor manager init not depends on ::android::SensorManager.\n\nTest: photo sphere\nChange-Id: Ice37a758421827757226a9898bcf3e00857443ff\nMerged-In: Ice37a758421827757226a9898bcf3e00857443ff\nFixes: 36448245\n"
    },
    {
      "commit": "5af190c5172f3b2436b5d37f5d748940c0b50843",
      "tree": "88c48fa2644565e1d958fa5a86ad505191f0b901",
      "parents": [
        "83e73f35d6cb2ba7dd0edc665ae169b6c2b30501",
        "9b871578e343751d91d0b0c9173ad5019711143a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 14 00:22:21 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 14 00:22:23 2017 +0000"
      },
      "message": "Merge \"Resurrect the pose tool.\" into oc-dr1-dev"
    },
    {
      "commit": "c6ff79830b9126f948791f03164a58ad079e9e5d",
      "tree": "a303749034c3b6ffb35b11f1f6907bfe668bc2c2",
      "parents": [
        "2672decb92fa24ef012cbbd3690c120530fa3cd3"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 13 17:09:11 2017 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 13 17:09:11 2017 -0700"
      },
      "message": "ConsumerBase: discardFreeBuffers() also needs to dump its own cache\n\nConsumerBase has its own cached slots with graphic buffer references,\nso it\u0027s not enough to just ask the buffer queue consumer to free\nbuffers.\n\nAdd code equivalent to what happens in the onBuffersReleased callback.\n\nTest:\nBug: 62593139\nChange-Id: Ibc1444b868c6150aa2da1c209e06bdba42f1595d\n"
    },
    {
      "commit": "2672decb92fa24ef012cbbd3690c120530fa3cd3",
      "tree": "b3cc68a6ce90b8aac7a1c2d86c3295154aad6ab8",
      "parents": [
        "2563c0f3b0aa07309d42c0d739880884b8131080"
      ],
      "author": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 13 16:39:11 2017 -0700"
      },
      "committer": {
        "name": "Eino-Ville Talvala",
        "email": "etalvala@google.com",
        "time": "Tue Jun 13 16:39:11 2017 -0700"
      },
      "message": "BufferQueueProducer: Call onBuffersReleased() in detachNextBuffer\n\nLike detachBuffer(), detachNextBuffer() needs to inform the consumer,\nwho generally has a cache of buffer items, that a buffer is no longer\nowned by the buffer queue.\n\nOtherwise the consumer layer can leak the buffer reference until\nconsumer teardown/disconnect.\n\nTest: Camera CTS is fine, using a camera app shows correct memory\n  behavior\nBug: 62591036\n\nChange-Id: I14c200d13e60dbbe21261343941f84fb786db117\n"
    },
    {
      "commit": "83e73f35d6cb2ba7dd0edc665ae169b6c2b30501",
      "tree": "fa9bd50323d00e5251e9361cfb1073d1936ebd25",
      "parents": [
        "1dc1ef5af577d0cacc7b86a83d243d9750b0dd6d",
        "922e418f4575c38556b4c217a18b7a79c5a8a8c8"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 13 20:18:14 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 13 20:18:14 2017 +0000"
      },
      "message": "atrace.rc: Correct path to saved_cmdlines_size when setting permission\nam: 922e418f45\n\nChange-Id: If92363cbd1ad525aa6b65e255cc86d7d6005ad25\n"
    },
    {
      "commit": "9b871578e343751d91d0b0c9173ad5019711143a",
      "tree": "23632fbf0c987846d915a8bef3a2a89b5abf41d2",
      "parents": [
        "1dc1ef5af577d0cacc7b86a83d243d9750b0dd6d"
      ],
      "author": {
        "name": "Okan Arikan",
        "email": "okana@google.com",
        "time": "Mon Jun 05 16:21:42 2017 -0700"
      },
      "committer": {
        "name": "Okan Arikan",
        "email": "okana@google.com",
        "time": "Tue Jun 13 20:11:29 2017 +0000"
      },
      "message": "Resurrect the pose tool.\n\nEditing the tool to look into the same broadcast ring that\nVrCore reads from.\n\nBug: 62355308\nTest: Run pose tool\nChange-Id: I270e3934c7df398048701a81851ee860a8acb712\n(cherry picked from commit 2a4d63ce1737705fff6def88e68b2e537db9074c)\n"
    },
    {
      "commit": "922e418f4575c38556b4c217a18b7a79c5a8a8c8",
      "tree": "95b6211522112a56d6ed90f7d201378387358dfd",
      "parents": [
        "2563c0f3b0aa07309d42c0d739880884b8131080"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Mon Jun 12 20:47:27 2017 -0700"
      },
      "committer": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 13 20:08:53 2017 +0000"
      },
      "message": "atrace.rc: Correct path to saved_cmdlines_size when setting permission\n\nBug: 62375794\nTest: CTS test\n\nChange-Id: Ie252be152ba26aced63af55734d3155ad93f2919\nSigned-off-by: Joel Fernandes \u003cjoelaf@google.com\u003e\n(cherry picked from commit 0094a2d5962ed81c6c624c900450d84f1967ba49)\n"
    },
    {
      "commit": "1dc1ef5af577d0cacc7b86a83d243d9750b0dd6d",
      "tree": "c269ff8f9af3ab6f4ddc110c07bb5deb6b55358d",
      "parents": [
        "516e0c3738c5264b966011cb968bf4f3031df9fc"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Mon Jun 12 11:28:37 2017 -0700"
      },
      "committer": {
        "name": "Thierry Strudel",
        "email": "tstrudel@google.com",
        "time": "Tue Jun 13 16:01:47 2017 +0000"
      },
      "message": "dumpstate: Better format for dumping block stat\n\nAfter CL the format looks like:\n\n------ BLOCK STAT (/sys/block/mmcblk0) ------\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/stat                 :    11299    16093  1262592    31863     3895     2968    63232     6463        0    10260    38243\n/mmcblk0/stat                 : perf(ios) rd: 75622KB/s(1322/s) wr: 18671KB/s(2246/s) q: 4\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p1/stat       :       37       29       66        6        0        0        0        0        0        6        6\n/mmcblk0/mmcblk0p1/stat       : perf(ios) rd: 5632KB/s(6167/s) q: 1\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p24/stat      :       12       32      346        0        1        0        8        0        0        0        0\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p26/stat      :        0        0        0        0        3      381     3072      296        0      100      296\n/mmcblk0/mmcblk0p26/stat      : perf(ios) rd: 0KB/s(0/s) wr: 15729KB/s(30/s) q: 3\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p30/stat      :       11       33      352       23        0        0        0        0        0       23       23\n/mmcblk0/mmcblk0p30/stat      : perf(ios) rd: 7836KB/s(478/s) q: 1\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p38/stat      :        1        3       32        0        0        0        0        0        0        0        0\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p39/stat      :      816     1072    47000     3460        0        0        0        0        0      273     3460\n/mmcblk0/mmcblk0p39/stat      : perf(ios) rd: 88147KB/s(2989/s) q: 13\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p40/stat      :       17       13      228        0        4        0       32        3        0        3        3\n/mmcblk0/mmcblk0p40/stat      : perf(ios) rd: 0KB/s(0/s) wr: 5461KB/s(1333/s) q: 1\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p41/stat      :     4831    14319   453376    17336        0        0        0        0        0     3273    17330\n/mmcblk0/mmcblk0p41/stat      : perf(ios) rd: 70898KB/s(1476/s) q: 5\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p42/stat      :        8      124     1056        3        0        0        0        0        0        3        3\n/mmcblk0/mmcblk0p42/stat      : perf(ios) rd: 180224KB/s(2667/s) q: 1\nBlock-Dev                     :    R-IOs   R-merg   R-sect   R-wait    W-IOs   W-merg   W-sect   W-wait   in-fli    activ   T-wait\n/mmcblk0/mmcblk0p45/stat      :     5560      468   760088    11033     3046     2587    60120     5490        0     6840    16453\n\nBug: 62319771\nTest: adb bugreport and check the result\nChange-Id: I9464c4758f03479d433bdb7a907dd4953f226e1e\n"
    },
    {
      "commit": "516e0c3738c5264b966011cb968bf4f3031df9fc",
      "tree": "76c989857470d4a657d6056b7f7bebb998febce5",
      "parents": [
        "efa87ca42e9ab130641dd2d81117b33e8b4c823b",
        "ef63521323be64ab863ed093855c8d0ad68e20d0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 13 04:18:19 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 13 04:18:20 2017 +0000"
      },
      "message": "Merge \"dumpstate: Remove wpa_cli usage\" into oc-dr1-dev"
    },
    {
      "commit": "efa87ca42e9ab130641dd2d81117b33e8b4c823b",
      "tree": "165e7599fe33091c9cb9803eb2b6ed1418647ff7",
      "parents": [
        "2f7af47f12c403dfb2c1680dcd9196dada98ae4d",
        "096cb99ad877594121d0112ba52dc343d1d34d9b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 12 20:44:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 12 20:44:35 2017 +0000"
      },
      "message": "Merge \"Re-enable default display when switching to VR mode.\" into oc-dr1-dev"
    },
    {
      "commit": "2f7af47f12c403dfb2c1680dcd9196dada98ae4d",
      "tree": "89e1ca30a636af080424f85e270336b021354e08",
      "parents": [
        "509bb5d1764cdc44eef5166436dac3130a239d6d",
        "c1c461af699d36d2b35a0246ce4b702a6ac759f9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Mon Jun 12 20:44:34 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 12 20:44:35 2017 +0000"
      },
      "message": "Merge \"Add LambdaMessage to SurfaceFlinger\" into oc-dr1-dev"
    },
    {
      "commit": "509bb5d1764cdc44eef5166436dac3130a239d6d",
      "tree": "5b3590380575040f78c82efffb2cc9c0103f3888",
      "parents": [
        "6c7f1196eaacf45f6d50c8e7b6e65e697b139e78"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Fri Jun 09 14:42:12 2017 -0700"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Fri Jun 09 20:57:59 2017 -0700"
      },
      "message": "dumpstate: Dump all block device stat\n\nWe have \"UPTIME MMC PERF\" but it is limited to MMC and thus has\nbeen broken for a while in recent devices.\nThis CL is to add dump for all block devices stat information.\n\nBug: 62319771\nTest: adb bugreport and check the result\nChange-Id: I74e0bf0c4bf40e268dffd0abb8922f0ffb5e9692\n"
    },
    {
      "commit": "6c7f1196eaacf45f6d50c8e7b6e65e697b139e78",
      "tree": "d22be752282805da9e7041cdbe31adebaf018707",
      "parents": [
        "b52ddcb2526262d1bbc70407336e73279ec5d78c",
        "99c2d73588dad4a4d12a17d37354237b8c11a16a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Jun 09 21:56:52 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 09 21:56:53 2017 +0000"
      },
      "message": "Merge \"Move global buffer ops to VR display service.\" into oc-dr1-dev"
    },
    {
      "commit": "b52ddcb2526262d1bbc70407336e73279ec5d78c",
      "tree": "61c600067595841343b77fc3465b35bb63b11557",
      "parents": [
        "2717eaba05a77e6cc7646c06fbd57804ab17d948",
        "2563c0f3b0aa07309d42c0d739880884b8131080"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 09 19:36:27 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 09 19:36:27 2017 +0000"
      },
      "message": "Merge \"Add missing VNDK pixel formats to AHardwareBuffer\" into oc-dev\nam: 2563c0f3b0\n\nChange-Id: I10e623eebb70da1f4127c0eec2aa85867da0623c\n"
    },
    {
      "commit": "2563c0f3b0aa07309d42c0d739880884b8131080",
      "tree": "cd945fb68be1a5571bf2577e6315328b645520a1",
      "parents": [
        "aaef0983baf38bd59b4129dd37e4cd21b73d92ad",
        "3a11413a2584cf9a51e4315bef27546f602578fb"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 09 19:02:45 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 09 19:02:46 2017 +0000"
      },
      "message": "Merge \"Add missing VNDK pixel formats to AHardwareBuffer\" into oc-dev"
    },
    {
      "commit": "2717eaba05a77e6cc7646c06fbd57804ab17d948",
      "tree": "c0d03c5b721d53fc51c5fa8b43272a9cb6fbf61f",
      "parents": [
        "5a556bc71eb0f1127d09bcfdc28fb9df719f3512",
        "3d127cf42f5578d58737043fb6dc656ee21d4e91"
      ],
      "author": {
        "name": "Okan Arikan",
        "email": "okana@google.com",
        "time": "Fri Jun 09 16:48:47 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 09 16:48:48 2017 +0000"
      },
      "message": "Merge \"Floor height API changes.\" into oc-dr1-dev"
    },
    {
      "commit": "096cb99ad877594121d0112ba52dc343d1d34d9b",
      "tree": "dfee4441ea3da444afe32f896373145cc75ee364",
      "parents": [
        "5a556bc71eb0f1127d09bcfdc28fb9df719f3512"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Jun 05 10:37:57 2017 -0400"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 09 16:00:18 2017 +0000"
      },
      "message": "Re-enable default display when switching to VR mode.\n\nPreviously, in an attempt to minimize the number of changes that got\nreset during VR mode transitions, the primary display was not turned back\non.\n\nBug: 62215749\nTest: Switch device into VR mode, observe primary display invalidations.\n\nChange-Id: Idd883e1522f519a0db06fdd88b071007487b6e70\n(cherry picked from commit 933ed5ceb9d70829333ae438985a1bfeec8e79a8)\n"
    },
    {
      "commit": "c1c461af699d36d2b35a0246ce4b702a6ac759f9",
      "tree": "d72397db4ec96e2d350f6e8e252e9d3d74e1e640",
      "parents": [
        "5a556bc71eb0f1127d09bcfdc28fb9df719f3512"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Wed Jun 07 11:36:32 2017 -0400"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 09 15:59:23 2017 +0000"
      },
      "message": "Add LambdaMessage to SurfaceFlinger\n\nLambdaMessage allows for a cleaner, more compact way to create and\ndispatch messages inside SurfaceFlinger. A follow up CL uses this\nmethod, but it was isolated here to keep added functionality and\nhelper facilities separate.\n\nBug: 62215749\nTest: Compile\nChange-Id: I9e13e04f1b67fd60f01bcab02fe4f19c91c10bd4\n(cherry picked from commit 117698b8e51c839e4c3925d66af13f3de3b420ab)\n"
    },
    {
      "commit": "5a556bc71eb0f1127d09bcfdc28fb9df719f3512",
      "tree": "75f8781517e51122363b8a25b5a7b6ea72b2ae7a",
      "parents": [
        "5d37ae59e040fdca43a92084c96d89db4be33fec",
        "aaef0983baf38bd59b4129dd37e4cd21b73d92ad"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Jun 09 07:59:34 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 09 07:59:34 2017 +0000"
      },
      "message": "Fix build\nam: aaef0983ba\n\nChange-Id: Ia4d360cb942c43180d6077cd01bd9e9eb5b598d5\n"
    },
    {
      "commit": "aaef0983baf38bd59b4129dd37e4cd21b73d92ad",
      "tree": "40e3f22ed2e5bc436259d348ac97839b29d33638",
      "parents": [
        "b1e2f8deb38353e4bcc9d3ef06bc15bd5e417425"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jun 08 23:55:29 2017 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jun 08 23:55:29 2017 -0700"
      },
      "message": "Fix build\n\nTest: builds\nBug: 36631902\nChange-Id: Iec23f8ab2b16c923f07d1857aa3471cfefc057dd\n"
    },
    {
      "commit": "5d37ae59e040fdca43a92084c96d89db4be33fec",
      "tree": "bc63508cdc8aed10d61896780503a9ef08048797",
      "parents": [
        "c11cc1d365c27dd888fcf01e5706c4df16816f48",
        "b1e2f8deb38353e4bcc9d3ef06bc15bd5e417425"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Fri Jun 09 04:15:20 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Jun 09 04:15:20 2017 +0000"
      },
      "message": "Properly run window animations at vsync-sf (2/2)\nam: b1e2f8deb3\n\nChange-Id: I7fbd22c681688edce1eda7f2786c68e6cbe32a22\n"
    },
    {
      "commit": "3a11413a2584cf9a51e4315bef27546f602578fb",
      "tree": "e8662881614751c57e8e54524ad221b86c2a7cd5",
      "parents": [
        "b5a1f50f5e4d4c626c9703c8736a0cc0fe9e934e"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jun 08 19:44:17 2017 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jun 08 19:44:17 2017 -0700"
      },
      "message": "Add missing VNDK pixel formats to AHardwareBuffer\n\nAHardwareBuffer is now the only API available to\nvendors to create graphic buffers in their HAL\nimplementations, unfortunately AHardwareBuffer\nwas designed for NDK use and was missing all\nHAL specific pixel formats.\n\nThis CL adds these missing format to the VNDK-only\nheader.\n\nThe implementation is changed to accept all formats\nwhich means, VNDK formats are indirectly exposed\nto the NDK.\n\nBug: 38466076\nTest: manual\nChange-Id: I1e752cd33641aa861d9d15432cde6bec5a682e9a\n"
    },
    {
      "commit": "b1e2f8deb38353e4bcc9d3ef06bc15bd5e417425",
      "tree": "5b64e4820f2c821fc2a07722c4f9168ea9b87680",
      "parents": [
        "b5a1f50f5e4d4c626c9703c8736a0cc0fe9e934e"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jun 08 15:43:59 2017 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Thu Jun 08 17:26:09 2017 -0700"
      },
      "message": "Properly run window animations at vsync-sf (2/2)\n\n- Add new Choreographer instance that runs on vsync-sf\n- Use this new Choreographer for WindowAnimator, and remove all\nthe hacks around it\n\nTest: Open apps and close apps, notice no stutter\nTest: Screen zoom animations\nTest: go/wm-smoke\nBug: 36631902\nChange-Id: I72a8b39709303a38fc077100229b8a81a153ba3e\n"
    },
    {
      "commit": "99c2d73588dad4a4d12a17d37354237b8c11a16a",
      "tree": "a204768275edbcf14c1b3311dddc693a1ee22b48",
      "parents": [
        "9a41a3483a9ea23c3f1627c146a509764821578e"
      ],
      "author": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Wed Jun 07 17:54:33 2017 -0700"
      },
      "committer": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Thu Jun 08 16:44:45 2017 -0700"
      },
      "message": "Move global buffer ops to VR display service.\n\nThe original home for these ops was the VR display manager service,\nwhich is a protected singleton service that may only have one client.\nSince more than one service needs to create global buffers, move these\nops to the display service. They are already protected by permission\nchecks.\n\nBug: 62424911\nTest: dvr_api-test passes\nChange-Id: Ia2f57fdf8a5258b52a652935d160e90db0f1cf9e\n"
    },
    {
      "commit": "3d127cf42f5578d58737043fb6dc656ee21d4e91",
      "tree": "2d8c4ed52d85ffa39c27201a2477c2bf8efdf15f",
      "parents": [
        "c11cc1d365c27dd888fcf01e5706c4df16816f48"
      ],
      "author": {
        "name": "Okan Arikan",
        "email": "okana@google.com",
        "time": "Tue Jun 06 09:52:33 2017 -0700"
      },
      "committer": {
        "name": "Okan Arikan",
        "email": "okana@google.com",
        "time": "Thu Jun 08 17:49:47 2017 +0000"
      },
      "message": "Floor height API changes.\n\nThe platform does not populate this field yet. This CL is for making the\nnecessary API change in frameworks/native before we cut the DR branch.\n\nBug: 38212129\nTest: No functional change. Must compile.\nChange-Id: Iaa21bbc0cec866bf5325d760e13989e49bce502a\n"
    },
    {
      "commit": "c11cc1d365c27dd888fcf01e5706c4df16816f48",
      "tree": "cf7cd9a6f225bb3cee8b436b42331b968a604327",
      "parents": [
        "9d4f73e75360207ece9c84cf915d4cef24d12c8b",
        "b5a1f50f5e4d4c626c9703c8736a0cc0fe9e934e"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Jun 08 15:34:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 08 15:34:49 2017 +0000"
      },
      "message": "Merge \"Don\u0027t double-count external cached app data.\" into oc-dev\nam: b5a1f50f5e\n\nChange-Id: Ia2057fe4522596b4593465db1f5d6cdcbf39c063\n"
    },
    {
      "commit": "b5a1f50f5e4d4c626c9703c8736a0cc0fe9e934e",
      "tree": "452404585c443646a650f951e0dbe99213fc9f50",
      "parents": [
        "d6d91e58336678726a03b2e9619b0bae0b23ff04",
        "4ca8ff98e40023c32e0f05473e1fe906b6537417"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Thu Jun 08 15:27:07 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 08 15:27:08 2017 +0000"
      },
      "message": "Merge \"Don\u0027t double-count external cached app data.\" into oc-dev"
    },
    {
      "commit": "9d4f73e75360207ece9c84cf915d4cef24d12c8b",
      "tree": "7ed445e59c1391fee79039d703263508a05834ed",
      "parents": [
        "9a41a3483a9ea23c3f1627c146a509764821578e",
        "d6d91e58336678726a03b2e9619b0bae0b23ff04"
      ],
      "author": {
        "name": "Peng Xu",
        "email": "pengxu@google.com",
        "time": "Thu Jun 08 10:23:01 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Jun 08 10:23:01 2017 +0000"
      },
      "message": "Merge \"No more ashmem equivalent checker false alarm\" into oc-dev\nam: d6d91e5833\n\nChange-Id: Ia4dad911062490db360fec8a1dc470b5a7bce9d6\n"
    },
    {
      "commit": "d6d91e58336678726a03b2e9619b0bae0b23ff04",
      "tree": "727d09ffc9f60e79643215405a70c4201311ef93",
      "parents": [
        "4c0bb0a09ac04281e631c16ef98d15846c12ecda",
        "2d2b46841bf2e22e58d80d3ec547e86b2f1e250b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jun 08 10:16:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 08 10:16:10 2017 +0000"
      },
      "message": "Merge \"No more ashmem equivalent checker false alarm\" into oc-dev"
    },
    {
      "commit": "9a41a3483a9ea23c3f1627c146a509764821578e",
      "tree": "7ed445e59c1391fee79039d703263508a05834ed",
      "parents": [
        "c197b62e9756a6d343295fd50f49df4bdb9e03ed",
        "4c0bb0a09ac04281e631c16ef98d15846c12ecda"
      ],
      "author": {
        "name": "Matthew Bouyack",
        "email": "mbouyack@google.com",
        "time": "Wed Jun 07 23:07:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 07 23:07:56 2017 +0000"
      },
      "message": "Merge \"DO NOT MERGE: Eliminate redundant changes to hardware vsync state.\" into cw-f-dev am: 9e5585930a am: f613f073b2  -s ours\nam: 4c0bb0a09a\n\nChange-Id: I579772728ba0f1c12ac6a611c53b0bba6e23c09b\n"
    },
    {
      "commit": "4c0bb0a09ac04281e631c16ef98d15846c12ecda",
      "tree": "ff67c29c0ad7664169c515dbbe93be79826369bc",
      "parents": [
        "ae6955fda8c669efdfd9cc9c3ff6b072db6e7c94",
        "f613f073b2d8a17ac65a68cf5484a44524a70d20"
      ],
      "author": {
        "name": "Matthew Bouyack",
        "email": "mbouyack@google.com",
        "time": "Wed Jun 07 22:59:18 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 07 22:59:18 2017 +0000"
      },
      "message": "Merge \"DO NOT MERGE: Eliminate redundant changes to hardware vsync state.\" into cw-f-dev am: 9e5585930a\nam: f613f073b2  -s ours\n\nChange-Id: I8a6e0a9b7e7810cfc33db9de074c2cdac139d233\n"
    },
    {
      "commit": "f613f073b2d8a17ac65a68cf5484a44524a70d20",
      "tree": "c7ff446dc7ef8a0ccb647075b9c984a756ab2498",
      "parents": [
        "21e9397776d41f6fec16bf6a35d7ce9ec5949559",
        "9e5585930a7a540ae54c6c36446d7e6e909b2301"
      ],
      "author": {
        "name": "Matthew Bouyack",
        "email": "mbouyack@google.com",
        "time": "Wed Jun 07 22:53:37 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 07 22:53:37 2017 +0000"
      },
      "message": "Merge \"DO NOT MERGE: Eliminate redundant changes to hardware vsync state.\" into cw-f-dev\nam: 9e5585930a\n\nChange-Id: I3b534f26c60bd8d6cf0736da7de807cf339a1cdd\n"
    },
    {
      "commit": "9e5585930a7a540ae54c6c36446d7e6e909b2301",
      "tree": "9558b44b2845996dd504666a68d2ed00c79c5408",
      "parents": [
        "ee464e00d3db7b16eb6b75932665f8ccc732d013",
        "674c714ddde6488c12d3a01f84fdf71cd976f614"
      ],
      "author": {
        "name": "Matthew Bouyack",
        "email": "mbouyack@google.com",
        "time": "Wed Jun 07 22:46:08 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 07 22:46:10 2017 +0000"
      },
      "message": "Merge \"DO NOT MERGE: Eliminate redundant changes to hardware vsync state.\" into cw-f-dev"
    },
    {
      "commit": "674c714ddde6488c12d3a01f84fdf71cd976f614",
      "tree": "87aa5db35be42c7a3f100616b14ced16845bdbe7",
      "parents": [
        "2d4959d8ebb865f67a6568ac76e16492797f1611"
      ],
      "author": {
        "name": "Matthew Bouyack",
        "email": "mbouyack@google.com",
        "time": "Thu Jun 01 14:37:29 2017 -0700"
      },
      "committer": {
        "name": "Matthew Bouyack",
        "email": "mbouyack@google.com",
        "time": "Wed Jun 07 22:38:50 2017 +0000"
      },
      "message": "DO NOT MERGE: Eliminate redundant changes to hardware vsync state.\n\nWhen transitioning between NORMAL and DOZE power modes\nwe were redundantly calling resyncHardwareVsync.\n\nSimilarly, when transitioning from DOZE_SUSPEND to OFF\nwe were redundantly calling disableHardwareVsync.\n\nThis change eliminates those redundant calls.\n\nFixes bug 62235417\n\nChange-Id: I513bbf94a7ab973ab258efe16436441ac2379b70\n"
    },
    {
      "commit": "4ca8ff98e40023c32e0f05473e1fe906b6537417",
      "tree": "4b8972f63e19d936e2de5f7cf63fb89715f1da26",
      "parents": [
        "ae6955fda8c669efdfd9cc9c3ff6b072db6e7c94"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Jun 07 15:59:03 2017 -0600"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@google.com",
        "time": "Wed Jun 07 22:21:53 2017 +0000"
      },
      "message": "Don\u0027t double-count external cached app data.\n\nCached app data is already counted in extStats.dataSize, so we don\u0027t\nneed to count it twice.\n\nTest: builds, boots, verified Settings UI before/after\nBug: 62343684\nChange-Id: Ic02cbe3f5938949730f9bc8d911ed398436f84d7\n"
    },
    {
      "commit": "c197b62e9756a6d343295fd50f49df4bdb9e03ed",
      "tree": "7ed445e59c1391fee79039d703263508a05834ed",
      "parents": [
        "21850d83d5604b74326cca001ce6e4f0ce78ee75",
        "ae6955fda8c669efdfd9cc9c3ff6b072db6e7c94"
      ],
      "author": {
        "name": "Jiwen \u0027Steve\u0027 Cai",
        "email": "jwcai@google.com",
        "time": "Wed Jun 07 19:30:47 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jun 07 19:30:47 2017 +0000"
      },
      "message": "No crash from AHardwareBuffer_unlock on NULL fence\nam: ae6955fda8\n\nChange-Id: I884ab8f0f15ad2e9e838572be638bfeee076686f\n"
    },
    {
      "commit": "ef63521323be64ab863ed093855c8d0ad68e20d0",
      "tree": "df17b6c06daeeae0bd856f73498e73ef401ff881",
      "parents": [
        "21850d83d5604b74326cca001ce6e4f0ce78ee75"
      ],
      "author": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Mon Jun 05 08:39:59 2017 -0700"
      },
      "committer": {
        "name": "Roshan Pius",
        "email": "rpius@google.com",
        "time": "Wed Jun 07 18:29:31 2017 +0000"
      },
      "message": "dumpstate: Remove wpa_cli usage\n\nList of saved networks is dumped out by WifiConfigManager during\nbugreport collection. The \u0027wpa_cli` command in dumpstate.cpp is\nnon-functional since the saved networks are no longer saved in\nwpa_supplicant.\n\nBug: 62068865\nTest: Collected bugreport and ensured that there are no wpa_cli errors.\nChange-Id: I0080bf10dafcbd187fcf583232ce64dd3868d818\n"
    },
    {
      "commit": "ae6955fda8c669efdfd9cc9c3ff6b072db6e7c94",
      "tree": "ff67c29c0ad7664169c515dbbe93be79826369bc",
      "parents": [
        "9351f72049a2bc65170afcf131008c8bd1710959"
      ],
      "author": {
        "name": "Jiwen \u0027Steve\u0027 Cai",
        "email": "jwcai@google.com",
        "time": "Fri Jun 02 15:23:26 2017 -0700"
      },
      "committer": {
        "name": "Jiwen Cai",
        "email": "jiwen@google.com",
        "time": "Wed Jun 07 17:04:45 2017 +0000"
      },
      "message": "No crash from AHardwareBuffer_unlock on NULL fence\n\nThe API document states: \"If fence is not NULL then it will be set to a\nfile descriptor that is signaled when all pending work on the buffer is\ncompleted.\" As it\u0027s too late to change the document, we should probably\nupdate the implement and use GraphicsBuffer::unlock under the hood.\n\nBug: 62302267\nTest: Build, AHardware CTS\nChange-Id: Ic0fac5d7addfba67baaa1b5d7c221fc25d02df56\n(cherry picked from commit 6cdbb537105b663572e71afe06bde1164fc215f3)\n"
    },
    {
      "commit": "21850d83d5604b74326cca001ce6e4f0ce78ee75",
      "tree": "7ed445e59c1391fee79039d703263508a05834ed",
      "parents": [
        "e4f32071f8023e13b1659bffb8180dd77bbb6d2d",
        "26b7bd48940bd2cc808b72c46917edbd3debb99a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 07 04:05:22 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 07 04:05:23 2017 +0000"
      },
      "message": "Merge changes from topic \u0027vrflinger-cleanup\u0027\n\n* changes:\n  libbufferhub: Fix native buffer.\n  libvrflinger: Move display request to avoid duplicate calls.\n  libvrflinger: Remove superfluous update to display manager.\n  libvrflinger: Move some tracing to a more verbose level.\n  libvrflinger: Add additional info to PDX dump.\n"
    },
    {
      "commit": "e4f32071f8023e13b1659bffb8180dd77bbb6d2d",
      "tree": "9984a06e88c6048afd0fad9c2b4232387f0b9486",
      "parents": [
        "7c9295906974605c03a6761217edc95e6fb01096",
        "48328dd8d97534ec39f420db2c017c53b8bedae1"
      ],
      "author": {
        "name": "Peng Xu",
        "email": "pengxu@google.com",
        "time": "Wed Jun 07 03:16:09 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 07 03:16:11 2017 +0000"
      },
      "message": "Merge \"Support custom permission, slight adjust of dumpsys print\""
    },
    {
      "commit": "7c9295906974605c03a6761217edc95e6fb01096",
      "tree": "194b28bb9c3cc50e665878c69226890c3f239c9f",
      "parents": [
        "3cfa9a9b1ff90bcc250e3282df894b4be3e894a8",
        "3054f004567bffc4b77e31fcf8d6c126b2262295"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jun 07 02:36:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 07 02:36:13 2017 +0000"
      },
      "message": "Merge \"Read saturation boost from a persistent property\""
    },
    {
      "commit": "26b7bd48940bd2cc808b72c46917edbd3debb99a",
      "tree": "b17ecda700acca34ba81405c808096747a8a4bf5",
      "parents": [
        "69a5973c81c80f5abb72f089d87d080727d4d40f"
      ],
      "author": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Wed May 10 16:27:21 2017 -0700"
      },
      "committer": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 18:30:28 2017 -0700"
      },
      "message": "libbufferhub: Fix native buffer.\n\nThis class was broken during a clean up. Fix the code in preparation\nfor adding tools that will use it again.\n\nBug: None\nTest: build; flash\nChange-Id: I8e60c7ba316080a24ff8914807972886e21ebce9\n"
    },
    {
      "commit": "69a5973c81c80f5abb72f089d87d080727d4d40f",
      "tree": "18d1ec840a46adb0c6de9105254db114b168c946",
      "parents": [
        "5b60355251b5d787dc7b6c0b142a67bc2105e8eb"
      ],
      "author": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 16:33:31 2017 -0700"
      },
      "committer": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 18:30:28 2017 -0700"
      },
      "message": "libvrflinger: Move display request to avoid duplicate calls.\n\nMove the request display call to avoid duplicate calls when direct\nsurfaces change but the current VrFlinger mode does not change.\n\nBug: 62389162\nTest: build; flash; VrFlinger mode works.\nChange-Id: I1348ada93e2992306cba7e319f9b20726fb97cb7\n"
    },
    {
      "commit": "5b60355251b5d787dc7b6c0b142a67bc2105e8eb",
      "tree": "0739f9954a7d721fc1c78a0e87db248f953f769b",
      "parents": [
        "89bbefcb31d77059c275abe843578d09264475c9"
      ],
      "author": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 16:16:28 2017 -0700"
      },
      "committer": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 18:30:28 2017 -0700"
      },
      "message": "libvrflinger: Remove superfluous update to display manager.\n\nSetting visibility attributes already triggers an update to the\ndisplay manager. Avoid the double trigger.\n\nBug: None\nTest: build; run\nChange-Id: I4c8a7c814143ccd1a4fc22fe068ba9b05d95cdd6\n"
    },
    {
      "commit": "89bbefcb31d77059c275abe843578d09264475c9",
      "tree": "b2bfd9e8870fdbae2cfe131fbc0ff59908d22d15",
      "parents": [
        "0b485c91f95fa7022998971fb9f407fe198bb853"
      ],
      "author": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 16:14:21 2017 -0700"
      },
      "committer": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 18:30:28 2017 -0700"
      },
      "message": "libvrflinger: Move some tracing to a more verbose level.\n\nQuiet the logs when using TRACE\u003d1.\n\nBug: None\nTest: Set TRACE\u003d1; build; observe traces do not appear.\nChange-Id: I521fa5cf4b0ab18e73f89a1898bf2d58fc2d1f88\n"
    },
    {
      "commit": "0b485c91f95fa7022998971fb9f407fe198bb853",
      "tree": "e8a4a388e6b44aa150656b818e98f8056ab1a112",
      "parents": [
        "537b16c4010e6c7b08500568403b2a09c34e876c"
      ],
      "author": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Fri May 19 12:02:58 2017 -0700"
      },
      "committer": {
        "name": "Corey Tabaka",
        "email": "eieio@google.com",
        "time": "Tue Jun 06 18:30:28 2017 -0700"
      },
      "message": "libvrflinger: Add additional info to PDX dump.\n\n- Add logging for surface and layers.\n- Minor cleanup of AcquiredBuffer code.\n- Add additional debug tracing.\n\nBug: None\nTest: servicetool --dump /dev/socket/pdx/system/vr/display/client\nChange-Id: Ie7cfe46978139e0eef2184b03acb4b9bab428a33\n"
    },
    {
      "commit": "3cfa9a9b1ff90bcc250e3282df894b4be3e894a8",
      "tree": "17f24fad6f7d9118c402476712bb0d50851fb6d2",
      "parents": [
        "55f14c39eb5b251a8347ba2a84217a609b86c467",
        "8fa4e107ab6cbc24c0e54d44db3341f006fe939a"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 06 23:20:56 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 06 23:20:57 2017 +0000"
      },
      "message": "Merge \"buffer_hub_queue_client: Batch allocate buffers\""
    },
    {
      "commit": "55f14c39eb5b251a8347ba2a84217a609b86c467",
      "tree": "923b8d615d81c20caaf55a1dfbb69c19e765cade",
      "parents": [
        "eaaa3c4a77d3b53cfc005640d50eac539d4791d9",
        "584dfc768850917ee0c1c72075640788c4fb24fc"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Jun 06 23:05:38 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 23:05:38 2017 +0000"
      },
      "message": "Do not use default initializer for union\nam: 584dfc7688\n\nChange-Id: I328296e07f5b6e5c3f880a2b243a7fe2e297252e\n"
    },
    {
      "commit": "584dfc768850917ee0c1c72075640788c4fb24fc",
      "tree": "35b8aeb6c53c6ca542bbb53fb856b4e677d948dd",
      "parents": [
        "485d70cfa4e4ecd3f38e9cf404c6faca9561f29f"
      ],
      "author": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Thu May 11 11:51:08 2017 -0700"
      },
      "committer": {
        "name": "Yi Kong",
        "email": "yikong@google.com",
        "time": "Tue Jun 06 22:43:56 2017 +0000"
      },
      "message": "Do not use default initializer for union\n\nThe next Clang update complains about this code pattern. Rewrite default\nconstructor to explicitly initialize the union field instead of using\nthe default initializer.\n\nTest: Build\nBug: 37752547\nChange-Id: I22a2aa392d7f4803282baed832b0fa2f852016ac\n(cherry picked from commit 4fdbdd1692a549a31382f33f5d529fd141453ea1)\n"
    },
    {
      "commit": "eaaa3c4a77d3b53cfc005640d50eac539d4791d9",
      "tree": "923b8d615d81c20caaf55a1dfbb69c19e765cade",
      "parents": [
        "39b5b95f2166748e25d1d295aa0768a3f321afa3",
        "485d70cfa4e4ecd3f38e9cf404c6faca9561f29f"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 06 20:56:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 20:56:50 2017 +0000"
      },
      "message": "atrace: setup saved_cmdlines_size and write only if available am: 9351f72049\nam: 485d70cfa4\n\nChange-Id: I5b0d49466edc2d0824cef0f6b3cef3a5bcf66f09\n"
    },
    {
      "commit": "485d70cfa4e4ecd3f38e9cf404c6faca9561f29f",
      "tree": "39ebd580ed82ea5cc852e0311a0e707cd42d3904",
      "parents": [
        "0ef3b0eca2121d0bee6c602c9939c17bb47cc73e",
        "9351f72049a2bc65170afcf131008c8bd1710959"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 06 20:54:50 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 20:54:50 2017 +0000"
      },
      "message": "atrace: setup saved_cmdlines_size and write only if available\nam: 9351f72049\n\nChange-Id: I6ac54d96cda205bc5d4e4d569b03b2064140e310\n"
    },
    {
      "commit": "39b5b95f2166748e25d1d295aa0768a3f321afa3",
      "tree": "923b8d615d81c20caaf55a1dfbb69c19e765cade",
      "parents": [
        "ce964f2e6088761f3e2b22535010872327eff264",
        "0ef3b0eca2121d0bee6c602c9939c17bb47cc73e"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 06 20:48:00 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 20:48:00 2017 +0000"
      },
      "message": "Merge \"Revert \"Disable in-place vdex update\"\" into oc-dev am: 7258088ea5\nam: 0ef3b0eca2\n\nChange-Id: I54f6eea644b392f6aefa9c07e035a1e2478ba311\n"
    },
    {
      "commit": "9351f72049a2bc65170afcf131008c8bd1710959",
      "tree": "ae6f4ea047c325365dd08151a165367575a23acb",
      "parents": [
        "7258088ea589874770b6b47a1612d59429f16bab"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 06 12:20:29 2017 -0700"
      },
      "committer": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 06 20:42:45 2017 +0000"
      },
      "message": "atrace: setup saved_cmdlines_size and write only if available\n\nOlder kernels (bullhead etc) don\u0027t have saved_cmdlines_size, check and\nwrite only if available. Also make work on non-root by setting\npermissions in rc file (thanks John Reck for suggestion).\n\nBug: 62375794\n\nChange-Id: Iefffc3203afd092ffb6cf420a144b38844aaee39\nSigned-off-by: Joel Fernandes \u003cjoelaf@google.com\u003e\n"
    },
    {
      "commit": "0ef3b0eca2121d0bee6c602c9939c17bb47cc73e",
      "tree": "0922610dd702d3252dff7f10d7cd0679f2c42700",
      "parents": [
        "66bc85165a43bc36518f5ad95de278c0aa589c7b",
        "7258088ea589874770b6b47a1612d59429f16bab"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 06 20:38:42 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 20:38:42 2017 +0000"
      },
      "message": "Merge \"Revert \"Disable in-place vdex update\"\" into oc-dev\nam: 7258088ea5\n\nChange-Id: I3e36f53541ccac1cccd2361d4d6b752e8e881668\n"
    },
    {
      "commit": "7258088ea589874770b6b47a1612d59429f16bab",
      "tree": "dc4ad1beb15e1b5764064c0de63946b58a574454",
      "parents": [
        "1b8114539601c16dca84865830ce765e3e43a2c8",
        "76689e9b20ff5d377fb33eaa23edcad9300d5fc4"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue Jun 06 20:20:33 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 06 20:20:35 2017 +0000"
      },
      "message": "Merge \"Revert \"Disable in-place vdex update\"\" into oc-dev"
    },
    {
      "commit": "ce964f2e6088761f3e2b22535010872327eff264",
      "tree": "923b8d615d81c20caaf55a1dfbb69c19e765cade",
      "parents": [
        "069fb4b90ac79910de6812d2ade5bf72f7302852"
      ],
      "author": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 06 12:20:29 2017 -0700"
      },
      "committer": {
        "name": "Joel Fernandes",
        "email": "joelaf@google.com",
        "time": "Tue Jun 06 12:35:54 2017 -0700"
      },
      "message": "atrace: setup saved_cmdlines_size and write only if available\n\nOlder kernels (bullhead etc) don\u0027t have saved_cmdlines_size, check and\nwrite only if available. Also make work on non-root by setting\npermissions in rc file (thanks John Reck for suggestion).\n\nBug: 62375794\n\nChange-Id: Iefffc3203afd092ffb6cf420a144b38844aaee39\nSigned-off-by: Joel Fernandes \u003cjoelaf@google.com\u003e\n"
    },
    {
      "commit": "8fa4e107ab6cbc24c0e54d44db3341f006fe939a",
      "tree": "02a64d1eb32007494cd638d988b1ae1f3445a409",
      "parents": [
        "4ddce844567e0b7ccb8a50706df8cddaba09ce86"
      ],
      "author": {
        "name": "Jiwen \u0027Steve\u0027 Cai",
        "email": "jwcai@google.com",
        "time": "Wed May 24 23:16:54 2017 -0700"
      },
      "committer": {
        "name": "Jiwen \u0027Steve\u0027 Cai",
        "email": "jwcai@google.com",
        "time": "Tue Jun 06 11:43:36 2017 -0700"
      },
      "message": "buffer_hub_queue_client: Batch allocate buffers\n\nBug: 36147743\nTest: buffer_hub_queue-test, buffer_hub_queue_producer-test, dvr_api-test\nChange-Id: I40a9babfa8d28d4496e27a7ccecb7ae1b9bc7bd5\n"
    },
    {
      "commit": "069fb4b90ac79910de6812d2ade5bf72f7302852",
      "tree": "f6f70495cff1bce472736d57a68bf6bb331bd3aa",
      "parents": [
        "d6d5c3c649b43eaa2867c5a80022361428042170",
        "d8fccf0124b78230ae2071fecc6bc6aebe8c540c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Jun 06 18:20:31 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 06 18:20:32 2017 +0000"
      },
      "message": "Merge \"Add DVR API for scroll event injection.\""
    },
    {
      "commit": "d6d5c3c649b43eaa2867c5a80022361428042170",
      "tree": "73cab439d7f6079f98a263c6acac3cc375962a2b",
      "parents": [
        "a5430768bfc0e3cdec63c46efa0276019a1547db",
        "66bc85165a43bc36518f5ad95de278c0aa589c7b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 06 18:19:26 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 18:19:26 2017 +0000"
      },
      "message": "fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776 am: 7b8472157a  -s ours\nam: 66bc85165a\n\nChange-Id: I977e8a53b3ff189b1740dfd612ec19edf0acc79a\n"
    },
    {
      "commit": "a5430768bfc0e3cdec63c46efa0276019a1547db",
      "tree": "73cab439d7f6079f98a263c6acac3cc375962a2b",
      "parents": [
        "4ddce844567e0b7ccb8a50706df8cddaba09ce86",
        "390786a2045a71f9e117840dfdb88b4ba342fe58"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 06 18:18:59 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 18:18:59 2017 +0000"
      },
      "message": "fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776  -s ours am: 1b81145396\nam: 390786a204\n\nChange-Id: I606f740ad26e0b415149a657adfe6c2dd879c139\n"
    },
    {
      "commit": "66bc85165a43bc36518f5ad95de278c0aa589c7b",
      "tree": "0922610dd702d3252dff7f10d7cd0679f2c42700",
      "parents": [
        "390786a2045a71f9e117840dfdb88b4ba342fe58",
        "7b8472157a1d1b1ee0951a19f10be876f651ab91"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 06 18:06:07 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 18:06:07 2017 +0000"
      },
      "message": "fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776\nam: 7b8472157a  -s ours\n\nChange-Id: I5289fea87abce43cb9fa7cf4cb11041b5201800d\n"
    },
    {
      "commit": "390786a2045a71f9e117840dfdb88b4ba342fe58",
      "tree": "0922610dd702d3252dff7f10d7cd0679f2c42700",
      "parents": [
        "317b493667a1b9128aded7a1eef4e891d3c9bcb3",
        "1b8114539601c16dca84865830ce765e3e43a2c8"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 06 18:05:04 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 18:05:04 2017 +0000"
      },
      "message": "fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3 am: 21e9397776  -s ours\nam: 1b81145396\n\nChange-Id: I3038e41c1e4b64e397162fea3ddb80eab6374614\n"
    },
    {
      "commit": "1b8114539601c16dca84865830ce765e3e43a2c8",
      "tree": "f8f8140fb9c63cf3755a2125be4820f6acb9448d",
      "parents": [
        "39cf8b4944bbbaeeabae357ef2122bfc4457f211",
        "21e9397776d41f6fec16bf6a35d7ce9ec5949559"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue Jun 06 17:59:02 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Tue Jun 06 17:59:02 2017 +0000"
      },
      "message": "fix race condition that can cause a use after free am: 59485525a6 am: 5da64c91d0 am: 46361c6c2b am: ee464e00d3\nam: 21e9397776  -s ours\n\nChange-Id: If0f229ba54f2c9978ba83beca331896d1d303db4\n"
    }
  ],
  "next": "7b8472157a1d1b1ee0951a19f10be876f651ab91"
}
