hal: Fix for memory corruption during Sub System Restart

- Random crashes are observed during SSR while playing
  compress session

- To identify active compress usecases during SSR,list_for_each()
  is being used for traversing.
  Once compress session is identiifed as part of loop, list_remove()
  (called from out_standby) is used to remove compress usecase.
  list_for_each() uses this removed node to traverse next node which
  result in-valid memory access as node is already removed.

- Instead of list_for_each(), use list_for_each_safe() which will make
  sure next node is updated before removing compress usecase.

Change-Id: I58c331caca4123651139685bb6c1eb20588a8097
1 file changed