Commits

Richard Liu committed 03166c8436c
MA-9165 fix kernel panic issue reported by some android stress test The issue can be reproduced when run some android stress test, such as monkey test, usb camera long time recording, AndroidSurface.apk. When the issue happen we always found some zero memory is tampered to 1, and then some kernel panic happen. Two changes to fix the issue: 1. Requires mutex-lock in when reference gctSIGNAL in gckOS_MapSignal, to fix concurrent issue. If the signal is already freed at this point, atomic_inc_return may change zero memory to 1 and cause memory corruption. if (atomic_inc_return(&signal->ref) <= 1) { /* The previous value is 0, it has been deleted. */ gcmkONERROR(gcvSTATUS_INVALID_ARGUMENT); } 2. Refine gckOS_UserSignal in kernel code, do not need reference and dereference around gckOS_Signal. Change-Id: Ib5970e86dbfbfd7d73f27a07d5e77a38c78a5fb6 Signed-off-by: Richard Liu <xuegang.liu@nxp.com>