Once the FX3 receives the data, it is likely to be sitting in the DMA buffers. Unless you read the data (or consume is to some other port), the data will remain there. The buffers will be occupied and you will not get any further DMA callback. Similar is the situation here, the DMA buffer might have got full (as you are not discarding the data), so any further callbacks won't be generated. You have to use CyU3PDmaChannelDiscardBuffer if you are not consuming the data through any available port.
What do you mean that you are getting performance issue. Please explain and share your firmware. Have you checked the USBBulkSourceSink firmware? There we are discarding every DMA buffer received from the host and we have not noticed any performance issues.