lkml.org 
[lkml]   [2023]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v3 01/28] xhci: Add support to allocate several interrupters
From
On 09.03.23 00:57, Wesley Cheng wrote:

> @@ -1865,8 +1889,15 @@ void xhci_mem_cleanup(struct xhci_hcd *xhci)
>
> cancel_delayed_work_sync(&xhci->cmd_timer);
>
> - xhci_free_interrupter(xhci, xhci->interrupter);
> - xhci->interrupter = NULL;
> + for (i = 1; i < xhci->max_interrupters; i++) {
> + if (xhci->interrupters[i])
> + xhci_remove_secondary_interrupter(xhci_to_hcd(xhci),
> + xhci->interrupters[i]);
> + }
> +
> + /* free the primary interrupter, interrupter number 0 */
> + xhci_free_interrupter(xhci, xhci->interrupters[0]);
> + xhci->interrupters[0] = NULL;
> xhci_dbg_trace(xhci, trace_xhci_dbg_init, "Freed primary event ring");

Any reason you are not just counting down to zero?

> + if (idx > 0) {
> + ir = xhci_alloc_interrupter(xhci, idx, GFP_KERNEL);
> + if (!ir) {
> + spin_unlock_irqrestore(&xhci->lock, flags);

Why use _irqrestore?

Regards
Oliver

\
 
 \ /
  Last update: 2023-03-27 00:51    [W:0.168 / U:0.412 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site