change by wcx figure out bug: 1. segment err 2. not unlock