update the code to sync with cm source

Change-Id: I3fd89f7c0cce921bb64b8703bdea6c018741e6b6