chansrv: deadlock, add trans copy func