Hello, To complete the open reflection on this subject: to be perfect, the echo skb should in fact not be released by the USB write completion routine but, like the PCI/PCIe version, on reception in the Rx queue of an echo frame to the one written... This means : 1 - the core of the peak_usb driver has to be deeply modified 2 - the rx path of the USB interface will be much more loaded, resulting in a higher CPU load 2 - in the case of a one-shot frame, how to manage the fact that this echo frame is never received because the one-shot frame could not be written on the bus? Does this need a garbage collector on the echo skbs? Is it worth it? Regards, --- Stéphane From: Marc Kleine-Budde Sent: Tuesday, March 9, 2021 15:58 To: Stéphane Grosjean Cc: Oliver Hartkopp; linux-can Mailing List Subject: Re: [PATCH 3/3] can/peak_usb: add support of ONE_SHOT mode On 09.03.2021 14:53:36, Stéphane Grosjean wrote: > In the usb drivers, the echo skb is always released by the USB write > complete callback. This means there will be an echo_skb_get() when the USB write completes, which is usually before the CAN controller sends the CAN frame. This means a TX complete or an TX abort due to one shot mode will not be reported? regards, Marc -- Pengutronix e.K. | Marc Kleine-Budde | Embedded Linux | https://www.pengutronix.de | Vertretung West/Dortmund | Phone: +49-231-2826-924 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | -- PEAK-System Technik GmbH Sitz der Gesellschaft Darmstadt - HRB 9183 Geschaeftsfuehrung: Alexander Gach / Uwe Wilhelm Unsere Datenschutzerklaerung mit wichtigen Hinweisen zur Behandlung personenbezogener Daten finden Sie unter www.peak-system.com/Datenschutz.483.0.html