[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <SJ0PR11MB5866232ACD93F2E2AF880F12E58CA@SJ0PR11MB5866.namprd11.prod.outlook.com>
Date: Thu, 14 Dec 2023 17:05:28 +0000
From: "Loktionov, Aleksandr" <aleksandr.loktionov@...el.com>
To: Paul Menzel <pmenzel@...gen.mpg.de>
CC: "Nguyen, Anthony L" <anthony.l.nguyen@...el.com>,
"intel-wired-lan@...ts.osuosl.org" <intel-wired-lan@...ts.osuosl.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>, "Kitszel, Przemyslaw"
<przemyslaw.kitszel@...el.com>
Subject: RE: [Intel-wired-lan] [PATCH iwl-next] i40e: add trace events related
to SFP module IOCTLs
> -----Original Message-----
> From: Paul Menzel <pmenzel@...gen.mpg.de>
> Sent: Thursday, December 14, 2023 3:20 PM
> To: Loktionov, Aleksandr <aleksandr.loktionov@...el.com>
> Cc: Nguyen, Anthony L <anthony.l.nguyen@...el.com>; intel-wired-
> lan@...ts.osuosl.org; netdev@...r.kernel.org; Kitszel, Przemyslaw
> <przemyslaw.kitszel@...el.com>
> Subject: Re: [Intel-wired-lan] [PATCH iwl-next] i40e: add trace
> events related to SFP module IOCTLs
>
> Dear Aleksandr,
>
>
> Thank you for your patch.
>
>
> Am 14.12.23 um 15:10 schrieb Aleksandr Loktionov:
> > Add trace events related to SFP module IOCTLs for
> troubleshooting.
>
> Maybe list the three events? Maybe even a usage example.
There is nothing especial about start to use new events, they start to be traced if you trace ioctls.
>
> > Riewed-by: Przemek Kitszel <przemyslaw.kitszel@...el.com>
>
> Reviewed
>
> > Signed-off-by: Aleksandr Loktionov
> <aleksandr.loktionov@...el.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");
>
> Is it useful, if there is a debug print already?
In fact, very useful. On some production systems debug printk is disabled. The point to use trace is not to slowdown production as all debug printk-s start to do and start/stop tracing at any moment.
>
> Kind regards,
>
> Paul
>
>
> > 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,
Powered by blists - more mailing lists