Update of Availability Group Servers

Hi,
The AlwaysOn configuration on SQL 2012 is given below-
Two synchronous-commit replicas on Primary data center.
Two asynchronous-commit secondary replicas on remote data center.
Upgrade steps followed-
Step.1- Remove automatic failover on all synchronous-commit replicas.
Step.2- Upgrade/update all remote server instances running asynchronous-commit secondary replicas.
Step.3- Upgrade/update the local secondary synchronous-commit replicas.
Step.4. Manually fail over the availability group to a synchronous-commit secondary replica.
Step.5- Upgrade/update the server instance that formerly hosted the primary replica
In above steps our application was unable to process the transaction during step.3 when local secondary synchronous-commit replicas was upgrading.
I suspect it was because both primary data center node was configured as synchronous-commit and primary server was not able to commit transaction on secondary synchronous-commit replica and wait until secondary replica online after upgrade.
In above process I assume that we should change synchronous-commit to asynchronous-commit before upgrading the primary data center replica.
Please advise if mine understanding is correct or it is not require to change synchronous-commit to asynchronous-commit during upgrade or patch instance.

did you have the same problem during step 5? It sounds like you're following the steps outlined in Microsoft's rolling patch for availability groups instructions (
https://msdn.microsoft.com/en-us/library/dn178483.aspx). I haven't run into this issue when following the steps outlined (anecdotal, for sure). Is it possible you mistakenly updated the primary first?

Thanks for your response however I am still not clear regarding the statement "The primary replica waits for confirmation from the synchronous-commit secondary replica."
The above statement indicate that if secondary sync replica in upgrade mode during patching and unable to process and request then it will not send any confirmation to primary replica and in that case primary replica wouldn't be able to further process any transaction.
Please clarify mine doubt.