Mailing-list OpenFlow-spec
answered the question. To make the question completed and help others, I post it here. Credit goes to Simon.
From Simon Horman :
An OpenFlow Packet-Out message, which is interpreted as such, would be received over an OpenFlow channel between the switch and a controller. Traffic for the channel does not run through the OpenFlow pipeline (OF1.3.2 section 6.3.1).
Thus, it would be the packet contained in the data field of the Packet-Out message which is processed by an Output action. This field would be forwarded to the OpenFlow pipeline by the switch after it receives the Packet-Out message via a channel.
If the Packet-Out message is sent via a channel then it will be decoded by the switch and the data field will be forwarded to the OpenFlow pipleline as described above.
If the Packet-Out message is not sent via a channel but rather just happens to be a packet that contains data that looks like a Packet-Out message then it will be handled directly by the OpenFlow pipeline without any special processing.