[dpdk-stable] patch 'net/bnx2x: cleanup info logs' has been queued to stable release 18.11.1

Kevin Traynor ktraynor at redhat.com
Wed Jan 23 23:32:22 CET 2019


On 01/23/2019 11:29 PM, Rasesh Mody wrote:
>> From: Kevin Traynor <ktraynor at redhat.com>
>> Sent: Friday, January 18, 2019 10:34 AM
>>
>> On 12/14/2018 06:24 PM, Kevin Traynor wrote:
>>> Hi,
>>>
>>> FYI, your patch has been queued to stable release 18.11.1
>>>
>>> Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
>>> It will be pushed if I get no objections before 12/18/18. So please
>>> shout if anyone has objections.
>>>
>>> Also note that after the patch there's a diff of the upstream commit
>>> vs the patch applied to the branch. This will indicate if there was
>>> any rebasing needed to apply to the stable branch. If there were code
>>> changes for rebasing
>>> (ie: not only metadata diffs), please double check that the rebase was
>>> correctly done.
>>>
>>> Thanks.
>>>
>>> Kevin Traynor
>>>
>>> ---
>>> From 638943ff479d53fbdacce84401e64e51d5720682 Mon Sep 17 00:00:00
>> 2001
>>> From: Rasesh Mody <rasesh.mody at cavium.com>
>>> Date: Sat, 17 Nov 2018 09:37:40 +0000
>>> Subject: [PATCH] net/bnx2x: cleanup info logs
>>>
>>> [ upstream commit 4dd60a7a935257f66e8a29cf11e7ca404041c013 ]
>>>> Reduced number of INFO logs in BNX2X PMD by converting some INFO
>>> logs to DEBUG and few NOTICE logs to INFO, removing extra new lines,
>>> printing banner bar once for the adapter and device specific info.
>>>
>>
>> Hi Rahesh, this commit is causing a build failure for bnx2x pmd in 18.08 stable.
>> Can you advise of which other patches should be backported for it, or if we
>> should drop it from 18.08 stable (it doesn't look critical to me).
> 
> Hi Kevin,
> 
> This commit has a dependency on another commit from Main tree, d5eb8edca213 ("net/bnx2x: update link/PHY management").
> I am sending a fix patch to address the build failure on 18.08 stable.
> 

Hi Rasesh, thanks for checking it.

Kevin.
> Thanks!
> -Rasesh
>>
>> thanks,
>> Kevin.
>>
>>> Fixes: ba7eeb035a5f ("net/bnx2x: fix logging to include device name")
>>> Fixes: 540a211084a7 ("bnx2x: driver core")
>>>
>>> Signed-off-by: Rasesh Mody <rasesh.mody at cavium.com>
>>> ---
>>>  drivers/net/bnx2x/bnx2x.c        | 144 +++++++++++++++----------------
>>>  drivers/net/bnx2x/bnx2x.h        |   3 +-
>>>  drivers/net/bnx2x/bnx2x_ethdev.c |  20 ++---
>>>  drivers/net/bnx2x/bnx2x_ethdev.h |   1 +
>>>  drivers/net/bnx2x/ecore_sp.c     |   8 +-
>>>  5 files changed, 87 insertions(+), 89 deletions(-)
>>>
>>> diff --git a/drivers/net/bnx2x/bnx2x.c b/drivers/net/bnx2x/bnx2x.c
>>> index 86c79c289..4c775c163 100644
>>> --- a/drivers/net/bnx2x/bnx2x.c
>>> +++ b/drivers/net/bnx2x/bnx2x.c
>>> @@ -5810,5 +5810,5 @@ static int bnx2x_set_power_state(struct
>> bnx2x_softc *sc, uint8_t state)
>>>       /* If there is no power capability, silently succeed */
>>>       if (!(sc->devinfo.pcie_cap_flags & BNX2X_PM_CAPABLE_FLAG)) {
>>> -             PMD_DRV_LOG(WARNING, sc, "No power capability");
>>> +             PMD_DRV_LOG(INFO, sc, "No power capability");
>>>               return 0;
>>>       }
>>> @@ -6919,11 +6919,11 @@ static void bnx2x_link_report_locked(struct
>> bnx2x_softc *sc)
>>>       }
>>>
>>> -     PMD_DRV_LOG(INFO, sc, "Change in link status : cur_data = %lx,
>> last_reported_link = %lx\n",
>>> -                 cur_data.link_report_flags,
>>> -                 sc->last_reported_link.link_report_flags);
>>> +     ELINK_DEBUG_P2(sc, "Change in link status : cur_data = %lx,
>> last_reported_link = %lx",
>>> +                    cur_data.link_report_flags,
>>> +                    sc->last_reported_link.link_report_flags);
>>>
>>>       sc->link_cnt++;
>>>
>>> -     PMD_DRV_LOG(INFO, sc, "link status change count = %x\n", sc-
>>> link_cnt);
>>> +     ELINK_DEBUG_P1(sc, "link status change count = %x",
>>> + sc->link_cnt);
>>>       /* report new link params and remember the state for the next time */
>>>       rte_memcpy(&sc->last_reported_link, &cur_data,
>>> sizeof(cur_data)); @@ -6931,5 +6931,5 @@ static void
>> bnx2x_link_report_locked(struct bnx2x_softc *sc)
>>>       if (bnx2x_test_bit(BNX2X_LINK_REPORT_LINK_DOWN,
>>>                        &cur_data.link_report_flags)) {
>>> -             PMD_DRV_LOG(INFO, sc, "NIC Link is Down");
>>> +             ELINK_DEBUG_P0(sc, "NIC Link is Down");
>>>       } else {
>>>               __rte_unused const char *duplex; @@ -6939,6 +6939,8 @@
>>> static void bnx2x_link_report_locked(struct bnx2x_softc *sc)
>>>                                          &cur_data.link_report_flags)) {
>>>                       duplex = "full";
>>> +                             ELINK_DEBUG_P0(sc, "link set to full
>>> + duplex");
>>>               } else {
>>>                       duplex = "half";
>>> +                             ELINK_DEBUG_P0(sc, "link set to half
>>> + duplex");
>>>               }
>>>
>>> @@ -7124,5 +7126,5 @@ void bnx2x_periodic_callout(struct bnx2x_softc
>> *sc)
>>>       if ((sc->state != BNX2X_STATE_OPEN) ||
>>>           (atomic_load_acq_long(&sc->periodic_flags) == PERIODIC_STOP)) {
>>> -             PMD_DRV_LOG(INFO, sc, "periodic callout exit (state=0x%x)",
>>> +             PMD_DRV_LOG(DEBUG, sc, "periodic callout exit
>>> + (state=0x%x)",
>>>                           sc->state);
>>>               return;
>>> @@ -8318,5 +8320,5 @@ static int bnx2x_get_device_info(struct
>> bnx2x_softc *sc)
>>>                ((sc->devinfo.bc_ver >> 16) & 0xff),
>>>                ((sc->devinfo.bc_ver >> 8) & 0xff));
>>> -     PMD_DRV_LOG(INFO, sc, "Bootcode version: %s", sc-
>>> devinfo.bc_ver_str);
>>> +     PMD_DRV_LOG(DEBUG, sc, "Bootcode version: %s",
>>> + sc->devinfo.bc_ver_str);
>>>
>>>       /* get the bootcode shmem address */ @@ -11744,40 +11746,34 @@
>>> static const char *get_bnx2x_flags(uint32_t flags)  }
>>>
>>> -/*
>>> - * Prints useful adapter info.
>>> - */
>>> +/* Prints useful adapter info. */
>>>  void bnx2x_print_adapter_info(struct bnx2x_softc *sc)  {
>>>       int i = 0;
>>> -     __rte_unused uint32_t ext_phy_type;
>>>
>>> -     PMD_INIT_FUNC_TRACE(sc);
>>> -     if (sc->link_vars.phy_flags & PHY_XGXS_FLAG)
>>> -             ext_phy_type = ELINK_XGXS_EXT_PHY_TYPE(REG_RD(sc,
>>> -                                                           sc->
>>> -                                                           devinfo.shmem_base
>>> -                                                           + offsetof(struct
>>> -                                                                      shmem_region,
>>> -                                                                      dev_info.port_hw_config
>>> -                                                                      [0].external_phy_config)));
>>> -     else
>>> -             ext_phy_type = ELINK_SERDES_EXT_PHY_TYPE(REG_RD(sc,
>>> -                                                             sc->
>>> -                                                             devinfo.shmem_base
>>> -                                                             +
>>> -                                                             offsetof(struct
>>> -                                                                      shmem_region,
>>> -                                                                      dev_info.port_hw_config
>>> -                                                                      [0].external_phy_config)));
>>> -
>>> -     PMD_DRV_LOG(INFO, sc,
>> "\n\n===================================\n");
>>> +     PMD_DRV_LOG(INFO, sc,
>> "========================================");
>>> +     /* DPDK and Driver versions */
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : %s", "DPDK",
>>> +                     rte_version());
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : %s", "Driver",
>>> +                     bnx2x_pmd_version());
>>> +     /* Firmware versions. */
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : %d.%d.%d",
>>> +                  "Firmware",
>>> +                  BNX2X_5710_FW_MAJOR_VERSION,
>>> +                  BNX2X_5710_FW_MINOR_VERSION,
>>> +                  BNX2X_5710_FW_REVISION_VERSION);
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : %s",
>>> +                  "Bootcode", sc->devinfo.bc_ver_str);
>>>       /* Hardware chip info. */
>>>       PMD_DRV_LOG(INFO, sc, "%12s : %#08x", "ASIC", sc->devinfo.chip_id);
>>>       PMD_DRV_LOG(INFO, sc, "%12s : %c%d", "Rev", (CHIP_REV(sc) >> 12) +
>> 'A',
>>>                    (CHIP_METAL(sc) >> 4));
>>> -
>>> -     /* Bus info. */
>>> -     PMD_DRV_LOG(INFO, sc,
>>> -                 "%12s : %d, ", "Bus PCIe", sc->devinfo.pcie_link_width);
>>> +     /* Bus PCIe info. */
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : 0x%x", "Vendor Id",
>>> +                 sc->devinfo.vendor_id);
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : 0x%x", "Device Id",
>>> +                 sc->devinfo.device_id);
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : width x%d, ", "Bus PCIe",
>>> +                 sc->devinfo.pcie_link_width);
>>>       switch (sc->devinfo.pcie_link_speed) {
>>>       case 1:
>>> @@ -11793,8 +11789,6 @@ void bnx2x_print_adapter_info(struct
>> bnx2x_softc *sc)
>>>               PMD_DRV_LOG(INFO, sc, "%33s", "Unknown link speed");
>>>       }
>>> -
>>>       /* Device features. */
>>>       PMD_DRV_LOG(INFO, sc, "%12s : ", "Flags");
>>> -
>>>       /* Miscellaneous flags. */
>>>       if (sc->devinfo.pcie_cap_flags & BNX2X_MSI_CAPABLE_FLAG) { @@
>>> -11802,5 +11796,4 @@ void bnx2x_print_adapter_info(struct bnx2x_softc
>> *sc)
>>>               i++;
>>>       }
>>> -
>>>       if (sc->devinfo.pcie_cap_flags & BNX2X_MSIX_CAPABLE_FLAG) {
>>>               if (i > 0)
>>> @@ -11809,37 +11802,25 @@ void bnx2x_print_adapter_info(struct
>> bnx2x_softc *sc)
>>>               i++;
>>>       }
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : %s", "OVLAN", (OVLAN(sc) ? "YES" :
>> "NO"));
>>> +     PMD_DRV_LOG(INFO, sc, "%12s : %s", "MF", (IS_MF(sc) ? "YES" :
>> "NO"));
>>> +     PMD_DRV_LOG(INFO, sc,
>>> +"========================================");
>>> +}
>>>
>>> -     if (IS_PF(sc)) {
>>> -             PMD_DRV_LOG(INFO, sc, "%12s : ", "Queues");
>>> -             switch (sc->sp->rss_rdata.rss_mode) {
>>> -             case ETH_RSS_MODE_DISABLED:
>>> -                     PMD_DRV_LOG(INFO, sc, "%19s", "None");
>>> -                     break;
>>> -             case ETH_RSS_MODE_REGULAR:
>>> -                     PMD_DRV_LOG(INFO, sc,
>>> -                                 "%18s : %d", "RSS", sc->num_queues);
>>> -                     break;
>>> -             default:
>>> -                     PMD_DRV_LOG(INFO, sc, "%22s", "Unknown");
>>> -                     break;
>>> -             }
>>> -     }
>>> +/* Prints useful device info. */
>>> +void bnx2x_print_device_info(struct bnx2x_softc *sc) {
>>> +     __rte_unused uint32_t ext_phy_type;
>>> +     uint32_t offset, reg_val;
>>>
>>> -     /* RTE and Driver versions */
>>> -     PMD_DRV_LOG(INFO, sc, "%12s : %s", "DPDK",
>>> -                     rte_version());
>>> -     PMD_DRV_LOG(INFO, sc, "%12s : %s", "Driver",
>>> -                     bnx2x_pmd_version());
>>> +     PMD_INIT_FUNC_TRACE(sc);
>>> +     offset = offsetof(struct shmem_region,
>>> +                       dev_info.port_hw_config[0].external_phy_config);
>>> +     reg_val = REG_RD(sc, sc->devinfo.shmem_base + offset);
>>> +     if (sc->link_vars.phy_flags & PHY_XGXS_FLAG)
>>> +             ext_phy_type = ELINK_XGXS_EXT_PHY_TYPE(reg_val);
>>> +     else
>>> +             ext_phy_type = ELINK_SERDES_EXT_PHY_TYPE(reg_val);
>>>
>>> -     /* Firmware versions and device features. */
>>> -     PMD_DRV_LOG(INFO, sc, "%12s : %d.%d.%d",
>>> -                  "Firmware",
>>> -                  BNX2X_5710_FW_MAJOR_VERSION,
>>> -                  BNX2X_5710_FW_MINOR_VERSION,
>>> -                  BNX2X_5710_FW_REVISION_VERSION);
>>> -     PMD_DRV_LOG(INFO, sc, "%12s : %s",
>>> -                  "Bootcode", sc->devinfo.bc_ver_str);
>>> -
>>> -     PMD_DRV_LOG(INFO, sc,
>> "\n\n===================================\n");
>>> +     /* Device features. */
>>>       PMD_DRV_LOG(INFO, sc, "%12s : %u", "Bnx2x Func", sc->pcie_func);
>>>       PMD_DRV_LOG(INFO, sc,
>>> @@ -11847,6 +11828,4 @@ void bnx2x_print_adapter_info(struct
>> bnx2x_softc *sc)
>>>       PMD_DRV_LOG(INFO, sc, "%12s : %s", "DMAE Is",
>>>                    (sc->dmae_ready ? "Ready" : "Not Ready"));
>>> -     PMD_DRV_LOG(INFO, sc, "%12s : %s", "OVLAN", (OVLAN(sc) ? "YES" :
>> "NO"));
>>> -     PMD_DRV_LOG(INFO, sc, "%12s : %s", "MF", (IS_MF(sc) ? "YES" : "NO"));
>>>       PMD_DRV_LOG(INFO, sc, "%12s : %u", "MTU", sc->mtu);
>>>       PMD_DRV_LOG(INFO, sc,
>>> @@ -11864,8 +11843,29 @@ void bnx2x_print_adapter_info(struct
>> bnx2x_softc *sc)
>>>               PMD_DRV_LOG(INFO, sc, "%12s : %s", "Recovery",
>>>                            get_recovery_state(sc->recovery_state));
>>> +     /* Queue info. */
>>> +     if (IS_PF(sc)) {
>>> +             switch (sc->sp->rss_rdata.rss_mode) {
>>> +             case ETH_RSS_MODE_DISABLED:
>>> +                     PMD_DRV_LOG(INFO, sc, "%12s : %s", "Queues", "RSS mode -
>> None");
>>> +                     break;
>>> +             case ETH_RSS_MODE_REGULAR:
>>> +                     PMD_DRV_LOG(INFO, sc, "%12s : %s,", "Queues", "RSS mode -
>> Regular");
>>> +                     PMD_DRV_LOG(INFO, sc, "%16d", sc->num_queues);
>>> +                     break;
>>> +             default:
>>> +                     PMD_DRV_LOG(INFO, sc, "%12s : %s", "Queues", "RSS mode -
>> Unknown");
>>> +                     break;
>>> +             }
>>> +     }
>>>       PMD_DRV_LOG(INFO, sc, "%12s : CQ = %lx,  EQ = %lx", "SPQ Left",
>>>                    sc->cq_spq_left, sc->eq_spq_left);
>>> +
>>>       PMD_DRV_LOG(INFO, sc,
>>>                   "%12s : %x", "Switch", sc->link_params.switch_cfg);
>>> -     PMD_DRV_LOG(INFO, sc,
>> "\n\n===================================\n");
>>> +     PMD_DRV_LOG(INFO, sc, "pcie_bus=%d, pcie_device=%d",
>>> +                     sc->pcie_bus, sc->pcie_device);
>>> +     PMD_DRV_LOG(INFO, sc, "bar0.addr=%p, bar1.addr=%p",
>>> +                     sc->bar[BAR0].base_addr, sc->bar[BAR1].base_addr);
>>> +     PMD_DRV_LOG(INFO, sc, "port=%d, path=%d, vnic=%d, func=%d",
>>> +                     PORT_ID(sc), PATH_ID(sc), VNIC_ID(sc),
>>> + FUNC_ID(sc));
>>>  }
>>> diff --git a/drivers/net/bnx2x/bnx2x.h b/drivers/net/bnx2x/bnx2x.h
>>> index 74780725b..32a12294b 100644
>>> --- a/drivers/net/bnx2x/bnx2x.h
>>> +++ b/drivers/net/bnx2x/bnx2x.h
>>> @@ -1938,4 +1938,5 @@ int bnx2x_tx_encap(struct bnx2x_tx_queue *txq,
>>> struct rte_mbuf *m0);  uint8_t bnx2x_txeof(struct bnx2x_softc *sc,
>>> struct bnx2x_fastpath *fp);  void bnx2x_print_adapter_info(struct
>>> bnx2x_softc *sc);
>>> +void bnx2x_print_device_info(struct bnx2x_softc *sc);
>>>  int bnx2x_intr_legacy(struct bnx2x_softc *sc, int scan_fp);  void
>>> bnx2x_link_status_update(struct bnx2x_softc *sc); @@ -1985,5 +1986,5
>>> @@ bnx2x_set_rx_mode(struct bnx2x_softc *sc)
>>>               }
>>>       } else {
>>> -             PMD_DRV_LOG(NOTICE, sc, "Card is not ready to change mode");
>>> +             PMD_DRV_LOG(INFO, sc, "Card is not ready to change
>>> + mode");
>>>       }
>>>  }
>>> diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c
>>> b/drivers/net/bnx2x/bnx2x_ethdev.c
>>> index 0057843b5..cc7816dd5 100644
>>> --- a/drivers/net/bnx2x/bnx2x_ethdev.c
>>> +++ b/drivers/net/bnx2x/bnx2x_ethdev.c
>>> @@ -246,6 +246,5 @@ bnx2x_dev_start(struct rte_eth_dev *dev)
>>>       }
>>>
>>> -     /* Print important adapter info for the user. */
>>> -     bnx2x_print_adapter_info(sc);
>>> +     bnx2x_print_device_info(sc);
>>>
>>>       return ret;
>>> @@ -575,4 +574,5 @@ bnx2x_common_dev_init(struct rte_eth_dev
>> *eth_dev, int is_vf)
>>>       struct rte_pci_addr pci_addr;
>>>       struct bnx2x_softc *sc;
>>> +     static bool adapter_info = true;
>>>
>>>       /* Extract key data structures */ @@ -633,6 +633,13 @@
>>> bnx2x_common_dev_init(struct rte_eth_dev *eth_dev, int is_vf)
>>>       }
>>>
>>> +     /* Print important adapter info for the user. */
>>> +     if (adapter_info) {
>>> +             bnx2x_print_adapter_info(sc);
>>> +             adapter_info = false;
>>> +     }
>>> +
>>>       /* schedule periodic poll for slowpath link events */
>>>       if (IS_PF(sc)) {
>>> +             PMD_DRV_LOG(DEBUG, sc, "Scheduling periodic poll for
>>> + slowpath link events");
>>>               ret = rte_eal_alarm_set(BNX2X_SP_TIMER_PERIOD,
>>>                                       bnx2x_periodic_start, (void
>>> *)eth_dev); @@ -646,13 +653,4 @@ bnx2x_common_dev_init(struct
>> rte_eth_dev *eth_dev, int is_vf)
>>>       eth_dev->data->mac_addrs = (struct ether_addr
>>> *)sc->link_params.mac_addr;
>>>
>>> -     PMD_DRV_LOG(INFO, sc, "pcie_bus=%d, pcie_device=%d",
>>> -                     sc->pcie_bus, sc->pcie_device);
>>> -     PMD_DRV_LOG(INFO, sc, "bar0.addr=%p, bar1.addr=%p",
>>> -                     sc->bar[BAR0].base_addr, sc->bar[BAR1].base_addr);
>>> -     PMD_DRV_LOG(INFO, sc, "port=%d, path=%d, vnic=%d, func=%d",
>>> -                     PORT_ID(sc), PATH_ID(sc), VNIC_ID(sc), FUNC_ID(sc));
>>> -     PMD_DRV_LOG(INFO, sc, "portID=%d vendorID=0x%x deviceID=0x%x",
>>> -                     eth_dev->data->port_id, pci_dev->id.vendor_id, pci_dev-
>>> id.device_id);
>>> -
>>>       if (IS_VF(sc)) {
>>>               rte_spinlock_init(&sc->vf2pf_lock);
>>> diff --git a/drivers/net/bnx2x/bnx2x_ethdev.h
>>> b/drivers/net/bnx2x/bnx2x_ethdev.h
>>> index 807ba1780..45958db9a 100644
>>> --- a/drivers/net/bnx2x/bnx2x_ethdev.h
>>> +++ b/drivers/net/bnx2x/bnx2x_ethdev.h
>>> @@ -48,4 +48,5 @@
>>>  #define TRUE                1
>>>
>>> +typedef int bool;
>>>  #define false               0
>>>  #define true                1
>>> diff --git a/drivers/net/bnx2x/ecore_sp.c
>>> b/drivers/net/bnx2x/ecore_sp.c index ab730abea..6d2bb815c 100644
>>> --- a/drivers/net/bnx2x/ecore_sp.c
>>> +++ b/drivers/net/bnx2x/ecore_sp.c
>>> @@ -531,7 +531,6 @@ static void __ecore_vlan_mac_h_read_unlock(struct
>> bnx2x_softc *sc,
>>>       } else {
>>>               o->head_reader--;
>>> -             PMD_DRV_LOG(INFO, sc,
>>> -                         "vlan_mac_lock - decreased readers to %d",
>>> -                         o->head_reader);
>>> +             ECORE_MSG(sc, "vlan_mac_lock - decreased readers to %d",
>>> +                       o->head_reader);
>>>       }
>>>
>>> @@ -540,6 +539,5 @@ static void __ecore_vlan_mac_h_read_unlock(struct
>> bnx2x_softc *sc,
>>>        */
>>>       if (!o->head_reader && o->head_exe_request) {
>>> -             PMD_DRV_LOG(INFO, sc,
>>> -                         "vlan_mac_lock - reader release encountered a pending
>> request");
>>> +             ECORE_MSG(sc, "vlan_mac_lock - reader release
>>> + encountered a pending request");
>>>
>>>               /* Writer release will do the trick */
>>>
> 



More information about the stable mailing list