Provisioning mode is the state your SCCM client is in when deploying an OS via the task sequence. The client is installed in “provisioning mode” to prevent it from processing new policy requests until the task sequence is completed.
You can find its state in the registry;
HKLM\SOFTWARE\Microsoft\CCM\CcmExec\ProvisioningMode = True
HKLM\SOFTWARE\Microsoft\CCM\CcmExec\SystemTaskExclude = SchedulerStartup;SchedulerShutdown;SchedulerLogon;SchedulerLogoff;ClientRegistrationStartup
On a healthy machine that has finished a task sequence the ccmeval task changes these values when run succesfully. these registry values should be:
HKLM\SOFTWARE\Microsoft\CCM\CcmExec\ProvisioningMode = False
HKLM\SOFTWARE\Microsoft\CCM\CcmExec\SystemTaskExclude = (no value, should be blank)
In one situation (a year ago) I found out provisioning mode was not working correctly. Possibly caused by a bug because of an issue with mobileclient.tcf. This should be fixed in SCCM 2012 SP1 but we haven’t removed te fix for new deployments from our task sequence, just to be sure.