how to know the surv function execution is done

This illustrates the difficulty that the lack of a reprex causes. See the FAQ: How to do a minimal reproducible example reprex for beginners as @nirgrahamuk brought up.

There is now a new function psm() from a different package, {rms} working with data that can only be guessed out and it's still not apparent whether or not S is working yet. The problem may be as the package author explained:

Use data=. Don't use $ in variables in the model.