mbuf: set errno on pool creation error
[dpdk.git] / lib / librte_mbuf / rte_mbuf.c
index 250a00c..4846b89 100644 (file)
@@ -156,6 +156,7 @@ rte_pktmbuf_pool_create(const char *name, unsigned n,
        struct rte_mempool *mp;
        struct rte_pktmbuf_pool_private mbp_priv;
        unsigned elt_size;
+       int ret;
 
        if (RTE_ALIGN(priv_size, RTE_MBUF_PRIV_ALIGN) != priv_size) {
                RTE_LOG(ERR, MBUF, "mbuf priv_size=%u is not aligned\n",
@@ -181,8 +182,10 @@ rte_pktmbuf_pool_create(const char *name, unsigned n,
        }
        rte_pktmbuf_pool_init(mp, &mbp_priv);
 
-       if (rte_mempool_populate_default(mp) < 0) {
+       ret = rte_mempool_populate_default(mp);
+       if (ret < 0) {
                rte_mempool_free(mp);
+               rte_errno = -ret;
                return NULL;
        }
 
@@ -272,10 +275,6 @@ const char *rte_get_rx_ol_flag_name(uint64_t mask)
        case PKT_RX_L4_CKSUM_BAD: return "PKT_RX_L4_CKSUM_BAD";
        case PKT_RX_IP_CKSUM_BAD: return "PKT_RX_IP_CKSUM_BAD";
        case PKT_RX_EIP_CKSUM_BAD: return "PKT_RX_EIP_CKSUM_BAD";
-       /* case PKT_RX_OVERSIZE: return "PKT_RX_OVERSIZE"; */
-       /* case PKT_RX_HBUF_OVERFLOW: return "PKT_RX_HBUF_OVERFLOW"; */
-       /* case PKT_RX_RECIP_ERR: return "PKT_RX_RECIP_ERR"; */
-       /* case PKT_RX_MAC_ERR: return "PKT_RX_MAC_ERR"; */
        case PKT_RX_VLAN_STRIPPED: return "PKT_RX_VLAN_STRIPPED";
        case PKT_RX_IEEE1588_PTP: return "PKT_RX_IEEE1588_PTP";
        case PKT_RX_IEEE1588_TMST: return "PKT_RX_IEEE1588_TMST";