work on syncpt and semaphore