Add trace events related to SFP module IOCTLs for troubleshooting.

Riewed-by: Przemek Kitszel <przemyslaw.kits...@intel.com>
Signed-off-by: Aleksandr Loktionov <aleksandr.loktio...@intel.com>
---
 src/CORE/i40e_ethtool.c |  5 +++++
 src/CORE/i40e_trace.h   | 18 ++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/src/CORE/i40e_ethtool.c b/src/CORE/i40e_ethtool.c
index 0838566..e9d9d4b 100644
--- a/src/CORE/i40e_ethtool.c
+++ b/src/CORE/i40e_ethtool.c
@@ -1057,6 +1057,7 @@ static int i40e_get_link_ksettings(struct net_device 
*netdev,
        ethtool_link_ksettings_zero_link_mode(ks, supported);
        ethtool_link_ksettings_zero_link_mode(ks, advertising);
 
+       i40e_trace(ioctl_get_link_ksettings, pf, hw_link_info->link_info);
        if (link_up)
                i40e_get_settings_link_up(hw, ks, netdev, pf);
        else
@@ -7219,9 +7220,12 @@ static int i40e_get_module_info(struct net_device 
*netdev,
                modinfo->eeprom_len = I40E_MODULE_QSFP_MAX_LEN;
                break;
        default:
+               i40e_trace(ioctl_get_module_info, pf, ~0UL);
                netdev_dbg(vsi->netdev, "SFP module type unrecognized or no SFP 
connector used.\n");
                return -EOPNOTSUPP;
        }
+       i40e_trace(ioctl_get_module_info, pf, (((u64)modinfo->type) << 32) |
+                  modinfo->eeprom_len);
        return 0;
 }
 
@@ -7244,6 +7248,7 @@ static int i40e_get_module_eeprom(struct net_device 
*netdev,
        u32 value = 0;
        int i;
 
+       i40e_trace(ioctl_get_module_eeprom, pf, ee ? ee->len : 0U);
        if (!ee || !ee->len || !data)
                return -EINVAL;
 
diff --git a/src/CORE/i40e_trace.h b/src/CORE/i40e_trace.h
index cac0f7c..f54fc36 100644
--- a/src/CORE/i40e_trace.h
+++ b/src/CORE/i40e_trace.h
@@ -428,6 +428,24 @@ DEFINE_EVENT(
 
        TP_ARGS(pf, val));
 
+DEFINE_EVENT(
+       i40e_ioctl_template, i40e_ioctl_get_module_info,
+       TP_PROTO(struct i40e_pf *pf, u64 val),
+
+       TP_ARGS(pf, val));
+
+DEFINE_EVENT(
+       i40e_ioctl_template, i40e_ioctl_get_module_eeprom,
+       TP_PROTO(struct i40e_pf *pf, u64 val),
+
+       TP_ARGS(pf, val));
+
+DEFINE_EVENT(
+       i40e_ioctl_template, i40e_ioctl_get_link_ksettings,
+       TP_PROTO(struct i40e_pf *pf, u64 val),
+
+       TP_ARGS(pf, val));
+
 DECLARE_EVENT_CLASS(
        i40e_nvmupd_template,
 
-- 
2.31.1

_______________________________________________
Intel-wired-lan mailing list
Intel-wired-lan@osuosl.org
https://lists.osuosl.org/mailman/listinfo/intel-wired-lan

Reply via email to