This sounds fine to me, but what's the API for doing this? You want to do KSPSetDM() and PCSetDM(), so that the user has to explicitly pull out the PC to set its DM?