This locking isn't actually needed here, is it? `tgt` is completely new, so no other thread should have access to it until this function returns.