SurfaceFlinger: make sure VsyncPredictor always maintains a valid slope

 - Add a safety check around the predicated vsync period in case
   the timestamps we got from present fences are incorrect.
   We suspect this happens when the device is in AOD.
 - Ignore present fences when device is in AOD.

Change-Id: Ib02287cb0b8e693b1f5f384d754c2c3d978024dc
Test: adb shell /data/nativetest64/libsurfaceflinger_unittest/libsurfaceflinger_unittest
Bug: 149299560
4 files changed