Linux USB
 help / color / mirror / Atom feed
From: "Neronin, Niklas" <niklas.neronin@linux.intel.com>
To: "Michał Pecio" <michal.pecio@gmail.com>
Cc: mathias.nyman@linux.intel.com, gregkh@linuxfoundation.org,
	linux-usb@vger.kernel.org
Subject: Re: [PATCH 19/21] usb: xhci: add 'goto' for halted endpoint check in handle_tx_event()
Date: Fri, 2 Aug 2024 12:39:51 +0300	[thread overview]
Message-ID: <012e6c67-d7d7-46ac-82d6-1899f3cafc2a@linux.intel.com> (raw)
In-Reply-To: <20240802112121.5a552f92@foxbook>


On 02/08/2024 12.21, Michał Pecio wrote:
> Hi,
> 
> This commit has now landed in 6.11-r1 and it appears to have a side
> effect of performing the halted endpoint check after every handled
> event, which wasn't done before.
> 
>> +	/* update the urb's actual_length and give back to the core */
>> +	if (usb_endpoint_xfer_control(&td->urb->ep->desc))
>> +		process_ctrl_td(xhci, ep, ep_ring, td, ep_trb, event);
>> +	else if (usb_endpoint_xfer_isoc(&td->urb->ep->desc))
>> +		process_isoc_td(xhci, ep, ep_ring, td, ep_trb, event);
>> +	else
>> +		process_bulk_intr_td(xhci, ep, ep_ring, td, ep_trb, event);
>> +
>> +check_endpoint_halted:
>> +	if (xhci_halted_host_endpoint(ep_ctx, trb_comp_code))
>> +		xhci_handle_halted_endpoint(xhci, ep, td, EP_HARD_RESET);
>>
>> 	return 0;
> 
> Since stall handling is already present in functions like finish_td() or
> process_bulk_intr_td() called from the above snippet, and this change of
> behavior is not documented in the changelog, I doubt if it's intended?

Hi,

Thanks, this is indeed unintended.
There definitely should be a return before the goto.

Thanks,
Niklas

> 
> Regards,
> Michal
> 

  reply	other threads:[~2024-08-02  9:39 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-26 12:48 [PATCH 00/21] xhci features for usb-next Mathias Nyman
2024-06-26 12:48 ` [PATCH 01/21] xhci: Remove dead code in xhci_move_dequeue_past_td() Mathias Nyman
2024-06-26 12:48 ` [PATCH 02/21] xhci: show usb device name in xhci urb tracing Mathias Nyman
2024-06-26 12:48 ` [PATCH 03/21] xhci: Set correct transferred length for cancelled isoc transfers Mathias Nyman
2024-06-26 12:48 ` [PATCH 04/21] xhci: dbc: Allow users to modify DbC poll interval via sysfs Mathias Nyman
2024-06-26 12:48 ` [PATCH 05/21] usb: xhci: remove 'num_trbs' from struct 'xhci_td' Mathias Nyman
2024-06-26 12:48 ` [PATCH 06/21] usb: xhci: remove unused 'xhci' argument Mathias Nyman
2024-06-26 12:48 ` [PATCH 07/21] usb: xhci: remove unused argument from xhci_handle_cmd_config_ep() Mathias Nyman
2024-06-26 12:48 ` [PATCH 08/21] usb: xhci: remove unused argument from handle_port_status() Mathias Nyman
2024-06-26 12:48 ` [PATCH 09/21] usb: xhci: move link chain bit quirk checks into one helper function Mathias Nyman
2024-06-26 12:48 ` [PATCH 10/21] usb: xhci: move all segment re-numbering to xhci_link_rings() Mathias Nyman
2024-06-26 12:48 ` [PATCH 11/21] usb: xhci: move untargeted transfer event handling to a separate function Mathias Nyman
2024-06-26 12:48 ` [PATCH 12/21] usb: xhci: improve error message for targetless transfer event Mathias Nyman
2024-06-26 12:48 ` [PATCH 13/21] usb: xhci: remove obsolete sanity check debug messages Mathias Nyman
2024-06-26 12:48 ` [PATCH 14/21] xhci: rework xhci internal endpoint halt state detection Mathias Nyman
2024-06-26 12:48 ` [PATCH 15/21] usb: xhci: ensure skipped isoc TDs are returned when isoc ring is stopped Mathias Nyman
2024-06-26 12:48 ` [PATCH 16/21] usb: xhci: remove false xhci_giveback_urb_in_irq() header comment Mathias Nyman
2024-06-26 12:48 ` [PATCH 17/21] usb: xhci: remove infinite loop prevention Mathias Nyman
2024-06-26 12:48 ` [PATCH 18/21] usb: xhci: move process TD code out of the while loop Mathias Nyman
2024-06-26 12:48 ` [PATCH 19/21] usb: xhci: add 'goto' for halted endpoint check in handle_tx_event() Mathias Nyman
2024-08-02  9:21   ` Michał Pecio
2024-08-02  9:39     ` Neronin, Niklas [this message]
2024-06-26 12:48 ` [PATCH 20/21] xhci: Apply XHCI_RESET_TO_DEFAULT quirk to TGL Mathias Nyman
2024-06-26 12:48 ` [PATCH 21/21] xhci: sort out TRB Endpoint ID bitfield macros Mathias Nyman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=012e6c67-d7d7-46ac-82d6-1899f3cafc2a@linux.intel.com \
    --to=niklas.neronin@linux.intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=mathias.nyman@linux.intel.com \
    --cc=michal.pecio@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox