* by the hardware, and the information about the buffer is
                 * comprised by the RX descriptor.
                 */
-               if (rx_status & MVPP2_RXD_ERR_SUMMARY) {
-err_drop_frame:
-                       dev->stats.rx_errors++;
-                       mvpp2_rx_error(port, rx_desc);
-                       /* Return the buffer to the pool */
-                       mvpp2_bm_pool_put(port, pool, dma_addr, phys_addr);
-                       continue;
-               }
+               if (rx_status & MVPP2_RXD_ERR_SUMMARY)
+                       goto err_drop_frame;
 
                if (bm_pool->frag_size > PAGE_SIZE)
                        frag_size = 0;
                mvpp2_rx_csum(port, rx_status, skb);
 
                napi_gro_receive(napi, skb);
+               continue;
+
+err_drop_frame:
+               dev->stats.rx_errors++;
+               mvpp2_rx_error(port, rx_desc);
+               /* Return the buffer to the pool */
+               mvpp2_bm_pool_put(port, pool, dma_addr, phys_addr);
        }
 
        if (rcvd_pkts) {