> -----Original Message-----
> From: Intel-wired-lan <[email protected]> On Behalf Of
> Loktionov, Aleksandr
> Sent: Monday, May 11, 2026 3:10 AM
> To: Li Li <[email protected]>; Nguyen, Anthony L
> <[email protected]>; Kitszel, Przemyslaw
> <[email protected]>; David S. Miller <[email protected]>;
> Jakub Kicinski <[email protected]>; Eric Dumazet <[email protected]>;
> [email protected]
> Cc: [email protected]; [email protected]; David Decotigny
> <[email protected]>; Singhai, Anjali <[email protected]>; Samudrala,
> Sridhar <[email protected]>; Brian Vazquez
> <[email protected]>; Tantilov, Emil S <[email protected]>
> Subject: Re: [Intel-wired-lan] [PATCH iwl-next v4] libie: log more info when
> virtchnl fails
> 
> 
> 
> > -----Original Message-----
> > From: Intel-wired-lan <[email protected]> On Behalf
> > Of Li Li via Intel-wired-lan
> > Sent: Saturday, May 9, 2026 1:07 AM
> > To: Nguyen, Anthony L <[email protected]>; Kitszel,
> > Przemyslaw <[email protected]>; David S. Miller
> > <[email protected]>; Jakub Kicinski <[email protected]>; Eric Dumazet
> > <[email protected]>; [email protected]
> > Cc: [email protected]; [email protected]; David
> > Decotigny <[email protected]>; Singhai, Anjali
> > <[email protected]>; Samudrala, Sridhar
> > <[email protected]>; Brian Vazquez <[email protected]>;
> > Tantilov, Emil S <[email protected]>
> > Subject: Re: [Intel-wired-lan] [PATCH iwl-next v4] libie: log more
> > info when virtchnl fails
> >
> > Friendly ping on this patch.
> >
> > Please let me know if you have any questions regarding this patch,
> > thank you!
> >
> > Li
> >
> > On Thu, Apr 30, 2026 at 6:25 PM Li Li <[email protected]> wrote:
> > >
> > > Virtchnl failures can be hard to debug without logs. Logging the
> > > details of virtchnl transactions can be useful for debugging
> > > virtchnl-related issues.
> > >
> > > Tested: Built & booted on a test machine and synthetically produced
> > a
> > > virtual failure to produce the following log:
> > >
> > > idpf 0000:01:00.0: Non-zero virtchnl ret val 6 (msg op: 1, data_len:
> > > 8); xn id: 0, cookie: 0 idpf 0000:01:00.0: Transaction failed (op 1,
> > > xn state:
> > > 3, id: 0, cookie: 0, size: 8)
> > >
> > > Signed-off-by: Li Li <[email protected]>
> > > ---
> > > v4:
> > >  - Simplify logging to reduce redundant "ret val"s.
> > >  - Use %u for xn->state.
> > > v3:
> > >  - Use dev_err_ratelimited in both logs.
> > >  - Move log placement to after virtchnl field validation.
> > >  - Remove redundant op/cookie fields since they were validated.
> > > v2:
> > >  - Use dev_warn_ratelimited instead of dev_notice_ratelimited based
> > on
> > >    reviewer feedback.
> > >  drivers/net/ethernet/intel/libie/controlq.c | 13 +++++++++++++
> > >  1 file changed, 13 insertions(+)
> > >
> > > diff --git a/drivers/net/ethernet/intel/libie/controlq.c
> > > b/drivers/net/ethernet/intel/libie/controlq.c
> > > index ebc05355e39d..e1bc19d6cdbf 100644
> > > --- a/drivers/net/ethernet/intel/libie/controlq.c
> > > +++ b/drivers/net/ethernet/intel/libie/controlq.c
> > > @@ -766,6 +766,14 @@ libie_ctlq_xn_process_recv(struct
> > libie_ctlq_xn_recv_params *params,
> > >             msg_cookie != xn->cookie)
> > >                 return false;
> > >
> > > +       if (ctlq_msg->chnl_retval) {
> > > +               dev_err_ratelimited(
> > > +                       params->ctlq->dev,
> > > +                       "Non-zero virtchnl ret val %u (msg op: %u,
> > data_len: %u); xn id: %u, cookie: %u\n",
> > > +                       ctlq_msg->chnl_retval, ctlq_msg-
> > >chnl_opcode,
> > > +                       ctlq_msg->data_len, xn->index, xn->cookie);
> > > +       }
> > > +
> > >         spin_lock(&xn->xn_lock);
> > >         if (xn->state != LIBIE_CTLQ_XN_ASYNC &&
> > >             xn->state != LIBIE_CTLQ_XN_WAITING) { @@ -1011,6
> > +1019,11
> > > @@ int libie_ctlq_xn_send(struct libie_ctlq_xn_send_params *params)
> > >                 params->recv_mem = xn->recv_mem;
> > >                 break;
> > >         default:
> > > +               dev_err_ratelimited(
> > > +                       params->ctlq->dev,
> > > +                       "Transaction failed (op %u, xn state: %u,
> > id: %u, cookie: %u, size: %zu)\n",
> > > +                       params->chnl_opcode, xn->state, xn->index,
> > xn->cookie,
> > > +                       xn->recv_mem.iov_len);
> > >                 ret = -EBADMSG;
> > >                 break;
> > >         }
> > > --
> > > 2.54.0.545.g6539524ca2-goog
> > >
> 
> Reviewed-by: Aleksandr Loktionov <[email protected]>

Tested-by: Samuel Salin <[email protected]>

Reply via email to