Most often cause is a time desynchronization between OMS and the grid agent or between the OMS and the agent that is faulty.
First, asumming the OMS is working and the Cloud Control can manage the agents, go to Setup -> Agents in Could Control Panel. Here, you can see some important tools and methods, useful for the administration of agents. First, looked at the Blocked column, for the coresponding agent. If the value is Yes, of course you can imagine the things cannot stay like this. Unblock it and retry to upload. If you not succeed, go to step 2: click on the name of the host, you will get to the managing panel of that agent, click Agent -> Resynchronization. A job will be scheduled and started and you cand follow it through the provided link.
When the job is done, go back to the host with the agent problem and try to upload. If doesn't succeed, next step is to mine into the logs. The most important log in the $AGENT_HOME/sysman/log folder is the gcagent.log, by my opinion. If the root cause of the error is a TZ mismatch (TZ=timezone), you should try a TZ reset:
-comment the agentTZRegion line
-save and exit
-check out the time zone of the operating system:
[oracle@orastdby config]$ cat /etc/sysconfig/clock
# The time zone of the system is defined by the contents of /etc/localtime.
# This file is only for evaluation by system-config-date, do not rely on its
# contents elsewhere.
-set the TZ variable, using the value from the /etc/sysconfig/clock file:
-reset the agent:
emctl stop agent
emctl resetTZ agent
emctl start agent
emctl upload agent
If the problem is still there, send me an email and i will try to help. All the best!