Fixed issue where lockability of sch_lock was not checked before calling sch_update_eip. sch_update_eip is a private function, so removed from header.
Changed try_take_lock to return false if lock is already held.