List comments

GET /api/patches/280/comments/?order=id
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

[
    {
        "id": 626,
        "web_url": "https://patches.dpdk.org/comment/626/",
        "msgid": "<CADNuJVqiwVZEPH=t0w05QYoRzKOxkJA6O+=FWrcTr76RS95rFQ@mail.gmail.com>",
        "date": "2014-09-02T18:25:03",
        "subject": "Re: [dpdk-dev] [PATCH v2 07/17] i40e: use the right debug macro",
        "submitter": {
            "id": 61,
            "url": "https://patches.dpdk.org/api/people/61/",
            "name": "Jay Rolette",
            "email": "rolette@infiniteio.com"
        },
        "content": "On Mon, Sep 1, 2014 at 5:24 AM, David Marchand <david.marchand@6wind.com>\nwrote:\n\n> - Don't use DEBUGFUNC macro in non-shared code.\n> - Don't use printf for logs.\n> - We should avoid calling RTE_LOG directly as pmd provides a wrapper for\n> logs.\n>\n> Signed-off-by: David Marchand <david.marchand@6wind.com>\n> ---\n>  lib/librte_pmd_i40e/i40e_ethdev.c    |  146\n> +++++++++++++++++-----------------\n>  lib/librte_pmd_i40e/i40e_ethdev_vf.c |    2 +-\n>  lib/librte_pmd_i40e/i40e_pf.c        |    6 +-\n>  lib/librte_pmd_i40e/i40e_rxtx.c      |   64 +++++++--------\n>  4 files changed, 110 insertions(+), 108 deletions(-)\n>\n> diff --git a/lib/librte_pmd_i40e/i40e_ethdev.c\n> b/lib/librte_pmd_i40e/i40e_ethdev.c\n> index 4e65ca4..352beb1 100644\n> --- a/lib/librte_pmd_i40e/i40e_ethdev.c\n> +++ b/lib/librte_pmd_i40e/i40e_ethdev.c\n> @@ -1059,24 +1059,23 @@ i40e_update_vsi_stats(struct i40e_vsi *vsi)\n>                             &oes->tx_errors, &nes->tx_errors);\n>         vsi->offset_loaded = true;\n>\n> -#ifdef RTE_LIBRTE_I40E_DEBUG_DRIVER\n> -       printf(\"***************** VSI[%u] stats start\n> *******************\\n\",\n> -\n>  vsi->vsi_id);\n> -       printf(\"rx_bytes:            %lu\\n\", nes->rx_bytes);\n> -       printf(\"rx_unicast:          %lu\\n\", nes->rx_unicast);\n> -       printf(\"rx_multicast:        %lu\\n\", nes->rx_multicast);\n> -       printf(\"rx_broadcast:        %lu\\n\", nes->rx_broadcast);\n> -       printf(\"rx_discards:         %lu\\n\", nes->rx_discards);\n> -       printf(\"rx_unknown_protocol: %lu\\n\", nes->rx_unknown_protocol);\n> -       printf(\"tx_bytes:            %lu\\n\", nes->tx_bytes);\n> -       printf(\"tx_unicast:          %lu\\n\", nes->tx_unicast);\n> -       printf(\"tx_multicast:        %lu\\n\", nes->tx_multicast);\n> -       printf(\"tx_broadcast:        %lu\\n\", nes->tx_broadcast);\n> -       printf(\"tx_discards:         %lu\\n\", nes->tx_discards);\n> -       printf(\"tx_errors:           %lu\\n\", nes->tx_errors);\n> -       printf(\"***************** VSI[%u] stats end *******************\\n\",\n> -\n>  vsi->vsi_id);\n> -#endif /* RTE_LIBRTE_I40E_DEBUG_DRIVER */\n> +       PMD_DRV_LOG(DEBUG, \"***************** VSI[%u] stats start\n> *******************\\n\",\n> +                   vsi->vsi_id);\n> +       PMD_DRV_LOG(DEBUG, \"rx_bytes:            %lu\\n\", nes->rx_bytes);\n> +       PMD_DRV_LOG(DEBUG, \"rx_unicast:          %lu\\n\", nes->rx_unicast);\n> +       PMD_DRV_LOG(DEBUG, \"rx_multicast:        %lu\\n\",\n> nes->rx_multicast);\n> +       PMD_DRV_LOG(DEBUG, \"rx_broadcast:        %lu\\n\",\n> nes->rx_broadcast);\n> +       PMD_DRV_LOG(DEBUG, \"rx_discards:         %lu\\n\", nes->rx_discards);\n> +       PMD_DRV_LOG(DEBUG, \"rx_unknown_protocol: %lu\\n\",\n> +                   nes->rx_unknown_protocol);\n> +       PMD_DRV_LOG(DEBUG, \"tx_bytes:            %lu\\n\", nes->tx_bytes);\n> +       PMD_DRV_LOG(DEBUG, \"tx_unicast:          %lu\\n\", nes->tx_unicast);\n> +       PMD_DRV_LOG(DEBUG, \"tx_multicast:        %lu\\n\",\n> nes->tx_multicast);\n> +       PMD_DRV_LOG(DEBUG, \"tx_broadcast:        %lu\\n\",\n> nes->tx_broadcast);\n> +       PMD_DRV_LOG(DEBUG, \"tx_discards:         %lu\\n\", nes->tx_discards);\n> +       PMD_DRV_LOG(DEBUG, \"tx_errors:           %lu\\n\", nes->tx_errors);\n> +       PMD_DRV_LOG(DEBUG, \"***************** VSI[%u] stats end\n> *******************\\n\",\n> +                   vsi->vsi_id);\n>  }\n>\n>  /* Get all statistics of a port */\n> @@ -1277,69 +1276,74 @@ i40e_dev_stats_get(struct rte_eth_dev *dev, struct\n> rte_eth_stats *stats)\n>         if (pf->main_vsi)\n>                 i40e_update_vsi_stats(pf->main_vsi);\n>\n> -#ifdef RTE_LIBRTE_I40E_DEBUG_DRIVER\n> -       printf(\"***************** PF stats start *******************\\n\");\n> -       printf(\"rx_bytes:            %lu\\n\", ns->eth.rx_bytes);\n> -       printf(\"rx_unicast:          %lu\\n\", ns->eth.rx_unicast);\n> -       printf(\"rx_multicast:        %lu\\n\", ns->eth.rx_multicast);\n> -       printf(\"rx_broadcast:        %lu\\n\", ns->eth.rx_broadcast);\n> -       printf(\"rx_discards:         %lu\\n\", ns->eth.rx_discards);\n> -       printf(\"rx_unknown_protocol: %lu\\n\", ns->eth.rx_unknown_protocol);\n> -       printf(\"tx_bytes:            %lu\\n\", ns->eth.tx_bytes);\n> -       printf(\"tx_unicast:          %lu\\n\", ns->eth.tx_unicast);\n> -       printf(\"tx_multicast:        %lu\\n\", ns->eth.tx_multicast);\n> -       printf(\"tx_broadcast:        %lu\\n\", ns->eth.tx_broadcast);\n> -       printf(\"tx_discards:         %lu\\n\", ns->eth.tx_discards);\n> -       printf(\"tx_errors:           %lu\\n\", ns->eth.tx_errors);\n> -\n> -       printf(\"tx_dropped_link_down:     %lu\\n\",\n> ns->tx_dropped_link_down);\n> -       printf(\"crc_errors:               %lu\\n\", ns->crc_errors);\n> -       printf(\"illegal_bytes:            %lu\\n\", ns->illegal_bytes);\n> -       printf(\"error_bytes:              %lu\\n\", ns->error_bytes);\n> -       printf(\"mac_local_faults:         %lu\\n\", ns->mac_local_faults);\n> -       printf(\"mac_remote_faults:        %lu\\n\", ns->mac_remote_faults);\n> -       printf(\"rx_length_errors:         %lu\\n\", ns->rx_length_errors);\n> -       printf(\"link_xon_rx:              %lu\\n\", ns->link_xon_rx);\n> -       printf(\"link_xoff_rx:             %lu\\n\", ns->link_xoff_rx);\n> +       PMD_DRV_LOG(DEBUG, \"***************** PF stats start\n> *******************\\n\");\n> +       PMD_DRV_LOG(DEBUG, \"rx_bytes:            %lu\\n\", ns->eth.rx_bytes);\n> +       PMD_DRV_LOG(DEBUG, \"rx_unicast:          %lu\\n\",\n> ns->eth.rx_unicast);\n> +       PMD_DRV_LOG(DEBUG, \"rx_multicast:        %lu\\n\",\n> ns->eth.rx_multicast);\n> +       PMD_DRV_LOG(DEBUG, \"rx_broadcast:        %lu\\n\",\n> ns->eth.rx_broadcast);\n> +       PMD_DRV_LOG(DEBUG, \"rx_discards:         %lu\\n\",\n> ns->eth.rx_discards);\n> +       PMD_DRV_LOG(DEBUG, \"rx_unknown_protocol: %lu\\n\",\n> +                   ns->eth.rx_unknown_protocol);\n> +       PMD_DRV_LOG(DEBUG, \"tx_bytes:            %lu\\n\", ns->eth.tx_bytes);\n> +       PMD_DRV_LOG(DEBUG, \"tx_unicast:          %lu\\n\",\n> ns->eth.tx_unicast);\n> +       PMD_DRV_LOG(DEBUG, \"tx_multicast:        %lu\\n\",\n> ns->eth.tx_multicast);\n> +       PMD_DRV_LOG(DEBUG, \"tx_broadcast:        %lu\\n\",\n> ns->eth.tx_broadcast);\n> +       PMD_DRV_LOG(DEBUG, \"tx_discards:         %lu\\n\",\n> ns->eth.tx_discards);\n> +       PMD_DRV_LOG(DEBUG, \"tx_errors:           %lu\\n\",\n> ns->eth.tx_errors);\n> +\n> +       PMD_DRV_LOG(DEBUG, \"tx_dropped_link_down:     %lu\\n\",\n> +                   ns->tx_dropped_link_down);\n> +       PMD_DRV_LOG(DEBUG, \"crc_errors:               %lu\\n\",\n> ns->crc_errors);\n> +       PMD_DRV_LOG(DEBUG, \"illegal_bytes:            %lu\\n\",\n> +                   ns->illegal_bytes);\n> +       PMD_DRV_LOG(DEBUG, \"error_bytes:              %lu\\n\",\n> ns->error_bytes);\n> +       PMD_DRV_LOG(DEBUG, \"mac_local_faults:         %lu\\n\",\n> +                   ns->mac_local_faults);\n> +       PMD_DRV_LOG(DEBUG, \"mac_remote_faults:        %lu\\n\",\n> +                   ns->mac_remote_faults);\n> +       PMD_DRV_LOG(DEBUG, \"rx_length_errors:         %lu\\n\",\n> +                   ns->rx_length_errors);\n> +       PMD_DRV_LOG(DEBUG, \"link_xon_rx:              %lu\\n\",\n> ns->link_xon_rx);\n> +       PMD_DRV_LOG(DEBUG, \"link_xoff_rx:             %lu\\n\",\n> ns->link_xoff_rx);\n>         for (i = 0; i < 8; i++) {\n> -               printf(\"priority_xon_rx[%d]:      %lu\\n\",\n> +               PMD_DRV_LOG(DEBUG, \"priority_xon_rx[%d]:      %lu\\n\",\n>                                 i, ns->priority_xon_rx[i]);\n> -               printf(\"priority_xoff_rx[%d]:     %lu\\n\",\n> +               PMD_DRV_LOG(DEBUG, \"priority_xoff_rx[%d]:     %lu\\n\",\n>                                 i, ns->priority_xoff_rx[i]);\n>         }\n> -       printf(\"link_xon_tx:              %lu\\n\", ns->link_xon_tx);\n> -       printf(\"link_xoff_tx:             %lu\\n\", ns->link_xoff_tx);\n> +       PMD_DRV_LOG(DEBUG, \"link_xon_tx:              %lu\\n\",\n> ns->link_xon_tx);\n> +       PMD_DRV_LOG(DEBUG, \"link_xoff_tx:             %lu\\n\",\n> ns->link_xoff_tx);\n>         for (i = 0; i < 8; i++) {\n> -               printf(\"priority_xon_tx[%d]:      %lu\\n\",\n> +               PMD_DRV_LOG(DEBUG, \"priority_xon_tx[%d]:      %lu\\n\",\n>                                 i, ns->priority_xon_tx[i]);\n> -               printf(\"priority_xoff_tx[%d]:     %lu\\n\",\n> +               PMD_DRV_LOG(DEBUG, \"priority_xoff_tx[%d]:     %lu\\n\",\n>                                 i, ns->priority_xoff_tx[i]);\n> -               printf(\"priority_xon_2_xoff[%d]:  %lu\\n\",\n> +               PMD_DRV_LOG(DEBUG, \"priority_xon_2_xoff[%d]:  %lu\\n\",\n>                                 i, ns->priority_xon_2_xoff[i]);\n>         }\n> -       printf(\"rx_size_64:               %lu\\n\", ns->rx_size_64);\n> -       printf(\"rx_size_127:              %lu\\n\", ns->rx_size_127);\n> -       printf(\"rx_size_255:              %lu\\n\", ns->rx_size_255);\n> -       printf(\"rx_size_511:              %lu\\n\", ns->rx_size_511);\n> -       printf(\"rx_size_1023:             %lu\\n\", ns->rx_size_1023);\n> -       printf(\"rx_size_1522:             %lu\\n\", ns->rx_size_1522);\n> -       printf(\"rx_size_big:              %lu\\n\", ns->rx_size_big);\n> -       printf(\"rx_undersize:             %lu\\n\", ns->rx_undersize);\n> -       printf(\"rx_fragments:             %lu\\n\", ns->rx_fragments);\n> -       printf(\"rx_oversize:              %lu\\n\", ns->rx_oversize);\n> -       printf(\"rx_jabber:                %lu\\n\", ns->rx_jabber);\n> -       printf(\"tx_size_64:               %lu\\n\", ns->tx_size_64);\n> -       printf(\"tx_size_127:              %lu\\n\", ns->tx_size_127);\n> -       printf(\"tx_size_255:              %lu\\n\", ns->tx_size_255);\n> -       printf(\"tx_size_511:              %lu\\n\", ns->tx_size_511);\n> -       printf(\"tx_size_1023:             %lu\\n\", ns->tx_size_1023);\n> -       printf(\"tx_size_1522:             %lu\\n\", ns->tx_size_1522);\n> -       printf(\"tx_size_big:              %lu\\n\", ns->tx_size_big);\n> -       printf(\"mac_short_packet_dropped: %lu\\n\",\n> +       PMD_DRV_LOG(DEBUG, \"rx_size_64:               %lu\\n\",\n> ns->rx_size_64);\n> +       PMD_DRV_LOG(DEBUG, \"rx_size_127:              %lu\\n\",\n> ns->rx_size_127);\n> +       PMD_DRV_LOG(DEBUG, \"rx_size_255:              %lu\\n\",\n> ns->rx_size_255);\n> +       PMD_DRV_LOG(DEBUG, \"rx_size_511:              %lu\\n\",\n> ns->rx_size_511);\n> +       PMD_DRV_LOG(DEBUG, \"rx_size_1023:             %lu\\n\",\n> ns->rx_size_1023);\n> +       PMD_DRV_LOG(DEBUG, \"rx_size_1522:             %lu\\n\",\n> ns->rx_size_1522);\n> +       PMD_DRV_LOG(DEBUG, \"rx_size_big:              %lu\\n\",\n> ns->rx_size_big);\n> +       PMD_DRV_LOG(DEBUG, \"rx_undersize:             %lu\\n\",\n> ns->rx_undersize);\n> +       PMD_DRV_LOG(DEBUG, \"rx_fragments:             %lu\\n\",\n> ns->rx_fragments);\n> +       PMD_DRV_LOG(DEBUG, \"rx_oversize:              %lu\\n\",\n> ns->rx_oversize);\n> +       PMD_DRV_LOG(DEBUG, \"rx_jabber:                %lu\\n\",\n> ns->rx_jabber);\n> +       PMD_DRV_LOG(DEBUG, \"tx_size_64:               %lu\\n\",\n> ns->tx_size_64);\n> +       PMD_DRV_LOG(DEBUG, \"tx_size_127:              %lu\\n\",\n> ns->tx_size_127);\n> +       PMD_DRV_LOG(DEBUG, \"tx_size_255:              %lu\\n\",\n> ns->tx_size_255);\n> +       PMD_DRV_LOG(DEBUG, \"tx_size_511:              %lu\\n\",\n> ns->tx_size_511);\n> +       PMD_DRV_LOG(DEBUG, \"tx_size_1023:             %lu\\n\",\n> ns->tx_size_1023);\n> +       PMD_DRV_LOG(DEBUG, \"tx_size_1522:             %lu\\n\",\n> ns->tx_size_1522);\n> +       PMD_DRV_LOG(DEBUG, \"tx_size_big:              %lu\\n\",\n> ns->tx_size_big);\n> +       PMD_DRV_LOG(DEBUG, \"mac_short_packet_dropped: %lu\\n\",\n>                         ns->mac_short_packet_dropped);\n> -       printf(\"checksum_error:           %lu\\n\", ns->checksum_error);\n> -       printf(\"***************** PF stats end ********************\\n\");\n> -#endif /* RTE_LIBRTE_I40E_DEBUG_DRIVER */\n> +       PMD_DRV_LOG(DEBUG, \"checksum_error:           %lu\\n\",\n> +                   ns->checksum_error);\n> +       PMD_DRV_LOG(DEBUG, \"***************** PF stats end\n> ********************\\n\");\n>  }\n>\n>  /* Reset the statistics */\n> diff --git a/lib/librte_pmd_i40e/i40e_ethdev_vf.c\n> b/lib/librte_pmd_i40e/i40e_ethdev_vf.c\n> index d8552ad..9c1ae94 100644\n> --- a/lib/librte_pmd_i40e/i40e_ethdev_vf.c\n> +++ b/lib/librte_pmd_i40e/i40e_ethdev_vf.c\n> @@ -1132,7 +1132,7 @@ static int\n>  rte_i40evf_pmd_init(const char *name __rte_unused,\n>                     const char *params __rte_unused)\n>  {\n> -       DEBUGFUNC(\"rte_i40evf_pmd_init\");\n> +       PMD_INIT_FUNC_TRACE();\n>\n>         rte_eth_driver_register(&rte_i40evf_pmd);\n>\n> diff --git a/lib/librte_pmd_i40e/i40e_pf.c b/lib/librte_pmd_i40e/i40e_pf.c\n> index e8b154d..eec291f 100644\n> --- a/lib/librte_pmd_i40e/i40e_pf.c\n> +++ b/lib/librte_pmd_i40e/i40e_pf.c\n> @@ -253,10 +253,8 @@ i40e_pf_host_send_msg_to_vf(struct i40e_pf_vf *vf,\n>         ret = i40e_aq_send_msg_to_vf(hw, abs_vf_id, opcode, retval,\n>                                                 msg, msglen, NULL);\n>         if (ret) {\n> -               PMD_DRV_LOG(ERR, \"Fail to send message to VF, err %u\\n\",\n> -                       hw->aq.asq_last_status);\n> -               printf(\"Fail to send message to VF, err %u\\n\",\n> -                                       hw->aq.asq_last_status);\n> +               PMD_INIT_LOG(ERR, \"Fail to send message to VF, err %u\\n\",\n> +                            hw->aq.asq_last_status);\n>         }\n>\n>         return ret;\n> diff --git a/lib/librte_pmd_i40e/i40e_rxtx.c\n> b/lib/librte_pmd_i40e/i40e_rxtx.c\n> index f153844..6987200 100644\n> --- a/lib/librte_pmd_i40e/i40e_rxtx.c\n> +++ b/lib/librte_pmd_i40e/i40e_rxtx.c\n> @@ -1788,50 +1788,50 @@ i40e_dev_tx_queue_setup(struct rte_eth_dev *dev,\n>         tx_free_thresh = (uint16_t)((tx_conf->tx_free_thresh) ?\n>                 tx_conf->tx_free_thresh : DEFAULT_TX_FREE_THRESH);\n>         if (tx_rs_thresh >= (nb_desc - 2)) {\n> -               RTE_LOG(ERR, PMD, \"tx_rs_thresh must be less than the \"\n> -                               \"number of TX descriptors minus 2. \"\n> -                               \"(tx_rs_thresh=%u port=%d queue=%d)\\n\",\n> -                                       (unsigned int)tx_rs_thresh,\n> -                                       (int)dev->data->port_id,\n> -                                               (int)queue_idx);\n> +               PMD_INIT_LOG(ERR, \"tx_rs_thresh must be less than the \"\n> +                            \"number of TX descriptors minus 2. \"\n> +                            \"(tx_rs_thresh=%u port=%d queue=%d)\\n\",\n> +                            (unsigned int)tx_rs_thresh,\n> +                            (int)dev->data->port_id,\n> +                            (int)queue_idx);\n>                 return I40E_ERR_PARAM;\n>         }\n>         if (tx_free_thresh >= (nb_desc - 3)) {\n> -               RTE_LOG(ERR, PMD, \"tx_rs_thresh must be less than the \"\n> -                               \"tx_free_thresh must be less than the \"\n> -                               \"number of TX descriptors minus 3. \"\n> -                               \"(tx_free_thresh=%u port=%d queue=%d)\\n\",\n> -                                       (unsigned int)tx_free_thresh,\n> -                                               (int)dev->data->port_id,\n> -                                                       (int)queue_idx);\n> +               PMD_INIT_LOG(ERR, \"tx_rs_thresh must be less than the \"\n> +                            \"tx_free_thresh must be less than the \"\n> +                            \"number of TX descriptors minus 3. \"\n> +                            \"(tx_free_thresh=%u port=%d queue=%d)\\n\",\n> +                            (unsigned int)tx_free_thresh,\n> +                            (int)dev->data->port_id,\n> +                            (int)queue_idx);\n>                 return I40E_ERR_PARAM;\n>         }\n>         if (tx_rs_thresh > tx_free_thresh) {\n> -               RTE_LOG(ERR, PMD, \"tx_rs_thresh must be less than or \"\n> -                               \"equal to tx_free_thresh.\n> (tx_free_thresh=%u\"\n> -                               \" tx_rs_thresh=%u port=%d queue=%d)\\n\",\n> -                                               (unsigned\n> int)tx_free_thresh,\n> -                                               (unsigned int)tx_rs_thresh,\n> -                                               (int)dev->data->port_id,\n> -                                                       (int)queue_idx);\n> +               PMD_INIT_LOG(ERR, \"tx_rs_thresh must be less than or \"\n> +                            \"equal to tx_free_thresh. (tx_free_thresh=%u\"\n> +                            \" tx_rs_thresh=%u port=%d queue=%d)\\n\",\n> +                            (unsigned int)tx_free_thresh,\n> +                            (unsigned int)tx_rs_thresh,\n> +                            (int)dev->data->port_id,\n> +                            (int)queue_idx);\n>                 return I40E_ERR_PARAM;\n>         }\n>         if ((nb_desc % tx_rs_thresh) != 0) {\n> -               RTE_LOG(ERR, PMD, \"tx_rs_thresh must be a divisor of the \"\n> -                               \"number of TX descriptors.\n> (tx_rs_thresh=%u\"\n> -                                               \" port=%d queue=%d)\\n\",\n> -                                               (unsigned int)tx_rs_thresh,\n> -                                               (int)dev->data->port_id,\n> -                                                       (int)queue_idx);\n> +               PMD_INIT_LOG(ERR, \"tx_rs_thresh must be a divisor of the \"\n> +                            \"number of TX descriptors. (tx_rs_thresh=%u\"\n> +                            \" port=%d queue=%d)\\n\",\n> +                            (unsigned int)tx_rs_thresh,\n> +                            (int)dev->data->port_id,\n> +                            (int)queue_idx);\n>                 return I40E_ERR_PARAM;\n>         }\n>         if ((tx_rs_thresh > 1) && (tx_conf->tx_thresh.wthresh != 0)) {\n> -               RTE_LOG(ERR, PMD, \"TX WTHRESH must be set to 0 if \"\n> -                               \"tx_rs_thresh is greater than 1. \"\n> -                               \"(tx_rs_thresh=%u port=%d queue=%d)\\n\",\n> -                                       (unsigned int)tx_rs_thresh,\n> -                                       (int)dev->data->port_id,\n> -                                               (int)queue_idx);\n> +               PMD_INIT_LOG(ERR, \"TX WTHRESH must be set to 0 if \"\n> +                            \"tx_rs_thresh is greater than 1. \"\n> +                            \"(tx_rs_thresh=%u port=%d queue=%d)\\n\",\n> +                            (unsigned int)tx_rs_thresh,\n> +                            (int)dev->data->port_id,\n> +                            (int)queue_idx);\n>                 return I40E_ERR_PARAM;\n>         }\n>\n> --\n> 1.7.10.4\n>\n> Reviewed-by: Jay Rolette <rolette@infiniteio.com>",
        "headers": {
            "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
            "X-Mailman-Version": "2.1.15",
            "Precedence": "list",
            "X-Gm-Message-State": "ALoCoQkX+tJf3LYHopjrMpUwq9IubBW8hTWZTX5Vk0OpGowIFLk0dZQ0nQkPDGdqn82GIko/Di0j",
            "List-Post": "<mailto:dev@dpdk.org>",
            "MIME-Version": "1.0",
            "References": "<1409567080-27083-1-git-send-email-david.marchand@6wind.com>\n\t<1409567080-27083-8-git-send-email-david.marchand@6wind.com>",
            "X-BeenThere": "dev@dpdk.org",
            "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
            "Subject": "Re: [dpdk-dev] [PATCH v2 07/17] i40e: use the right debug macro",
            "Content-Type": "text/plain; charset=UTF-8",
            "From": "Jay Rolette <rolette@infiniteio.com>",
            "Received": [
                "from mail-yh0-f41.google.com (mail-yh0-f41.google.com\n\t[209.85.213.41]) by dpdk.org (Postfix) with ESMTP id 367215947\n\tfor <dev@dpdk.org>; Tue,  2 Sep 2014 20:20:31 +0200 (CEST)",
                "by mail-yh0-f41.google.com with SMTP id 29so4595369yhl.0\n\tfor <dev@dpdk.org>; Tue, 02 Sep 2014 11:25:03 -0700 (PDT)",
                "by 10.170.96.213 with HTTP; Tue, 2 Sep 2014 11:25:03 -0700 (PDT)"
            ],
            "X-Content-Filtered-By": "Mailman/MimeDel 2.1.15",
            "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
            "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
            "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20130820;\n\th=x-gm-message-state:mime-version:in-reply-to:references:date\n\t:message-id:subject:from:to:cc:content-type;\n\tbh=4QtwQelNMF5NMgE27khecp6ZAqrtcMvW2TxsCaDRp78=;\n\tb=iJFAAnu1ZZhKBVH10QPJa8g6h4xsPhA9i3NZcWJslbSlEmiR8BZ3HRab6qfBZZEoET\n\tDp6kTaiUdtEsASpEB5FZrhYDPOA8Zatjgs+Mf4PN7Hzn9Dt1ByMEn+2ILWoatj2OpgIa\n\ti8XOA7ob2vsnGwNCgpW6aNlAjWTKbg/re10cS11oACU5OqNu4xF9dz8Q0DPQCpQEnopg\n\tF800j12RiPD7K38cualSCmnyv3dq1RhtVN6bk3kFjarX1QaRy5wdVubG+VQOzVzC5XBC\n\tolqSRLcdm2Q16z5i1wKj1TBfYW4ivQZWVyoogBwWkBeX8bZpsvLzIGGFhMdf0BpHcBPW\n\tNgmg==",
            "Message-ID": "<CADNuJVqiwVZEPH=t0w05QYoRzKOxkJA6O+=FWrcTr76RS95rFQ@mail.gmail.com>",
            "Date": "Tue, 2 Sep 2014 13:25:03 -0500",
            "X-Received": "by 10.236.120.163 with SMTP id p23mr3503068yhh.139.1409682303695;\n\tTue, 02 Sep 2014 11:25:03 -0700 (PDT)",
            "To": "David Marchand <david.marchand@6wind.com>",
            "In-Reply-To": "<1409567080-27083-8-git-send-email-david.marchand@6wind.com>",
            "Cc": "\"dev@dpdk.org\" <dev@dpdk.org>",
            "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
            "X-List-Received-Date": "Tue, 02 Sep 2014 18:20:31 -0000",
            "Return-Path": "<rolette@infiniteio.com>"
        }
    }
]