Reconcile with jb-mr2-release - do not merge

Change-Id: I8176eb9302e58477ef1bd9b394a974d85fa67792
am 006a601f: Fix reading NULL Surfaces from Parcels

* commit '006a601f22b275bcabf608f630b321df027d56d1':
  Fix reading NULL Surfaces from Parcels
am f59d2f90: Merge changes I0e90b3f3,Ib7769bde,I4c25f34f,I1ec6400a into jb-mr2-dev

* commit 'f59d2f9070621e8f36b2ded3ec1d07bd3aec6150':
  implement display projection clipping in h/w composer
  refactor the crop region for hwc is calculated/set
  apply the projection's viewport to the visibleregion passed to hwc
  set correct crop rectangle in LayerBase::setCrop
am eabe3140: Merge "Init displays to null layer stack" into jb-mr2-dev

* commit 'eabe3140f11e515639e7a70a1286dd6af7352c9e':
  Init displays to null layer stack
am 306f18c5: Merge "rework screenshot API and implementation" into jb-mr2-dev

* commit '306f18c5fb15ac05db09ece7241af02b9713a23d':
  rework screenshot API and implementation
Reconcile with jb-mr2-release - do not merge

Change-Id: I7bb6b77ca42a715a6eb69081512c43a43158e1e3
am 7284145d: Add eglPresentationTimeANDROID

* commit '7284145d564fa8a422a8e564a38c730fb4a2962b':
  Add eglPresentationTimeANDROID
am f082323c: Merge "CpuConsumer_test: Extend test with new formats RGBA8888 and optional Y8/Y16" into jb-mr2-dev

* commit 'f082323c0dbd915d2ad7b6f4d9c732e230fcda46':
  CpuConsumer_test: Extend test with new formats RGBA8888 and optional Y8/Y16
am 175264b0: Return NO_MEMORY when glReadPixels() fails.

* commit '175264b09c6080b29a23fc9f545d4b99445714bd':
  Return NO_MEMORY when glReadPixels() fails.
am 438ca07b: Merge changes I66511c08,Ia051949f,Ic7451365,I5b571a4c into jb-mr2-dev

* commit '438ca07b6ba74235e87bfbd78c94874d8bbde391':
  Get rid of LayerBase.
  Make LayerDim a regular Layer instead of a LayerBase
  fold LayerBaseClient into LayerBase
  Remove support for ScreenshotLayer
am 2be4e8ff: workaround to fix screenshot leak on N4

* commit '2be4e8ff23f24285f4c195ba5537c7a51c13be4d':
  workaround to fix screenshot leak on N4
am 1f758231: Merge changes I7f696e42,I51c6df3c into jb-mr2-dev

* commit '1f758231c26261bd6ef3ec869ce230c06ed5b596':
  Make GraphicBuffer a RefBase
  Fix RefBase debugging. O_CREAT must specify the mode.
am 84b470d7: attempt to fix build

* commit '84b470d78f10b6fbfbf84edba749e5f7f315fc3a':
  attempt to fix build
am 3cd153a0: another attempt to fix the build

* commit '3cd153a0330d4234a536fc5f4e4346413bde5a44':
  another attempt to fix the build
am 6c337e7a: resolved conflicts for merge of bfb2aa46 to jb-mr2-dev

* commit '6c337e7a663c1049e58e0051bd7bfba61614ef37':
  Tweaks for forward compatibility
am 86306b58: Merge "Defer destroying surfaces until not current" into jb-mr2-dev

* commit '86306b587644e939c5b6d4a53d67c9b74ce24ba5':
  Defer destroying surfaces until not current
am 49385ec7: Merge "When disconnecting a surface, cancel don\'t queue the buffer" into jb-mr2-dev

* commit '49385ec7c361347a69245c8a0838f6d03343a1de':
  When disconnecting a surface, cancel don't queue the buffer
am 6b2b7009: Merge changes Ibb3b6ff0,I2341e20c into jb-mr2-dev

* commit '6b2b7009560964ed25cde06602872dff763b09f4':
  rename binder services main thread to Binder_*
  limit number of extra binder threads in SF to 4
am 7589b2a7: add two libgui tests

* commit '7589b2a7975cc3bc2a0659ab6503ceb3e4d94048':
  add two libgui tests
am d5776414: make sure to call compositionComplete after taking a screenshot

* commit 'd577641411f067c93aabcd2acf7ce06862fb26d3':
  make sure to call compositionComplete after taking a screenshot