usb_hcd_unlink_urb_from_ep(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay so bestie, we're deep in the kernel API manual right now, and this page is literally about usb_hcd_unlink_urb_from_ep πŸ¦‹ β€” yes the whole manual name is right there in the title, we're being professional about it, don't worry about it.


🌸 NAME 🌸

usb_hcd_unlink_urb_from_ep β€” remove an URB from its endpoint queue πŸ’«


✨ SYNOPSIS ✨

void usb_hcd_unlink_urb_from_ep (struct usb_hcd *hcd , struct urb *urb
);

no cap, that's the whole signature. two pointers, no return value, she just does the thing πŸŽ€


🫢 ARGUMENTS 🫢

  • hcd β€” the host controller that urb was submitted to. like, the specific one, okay? not vibes, an actual pointer πŸ’…
  • urb β€” the URB that's being unlinked. that's the one we're yanking out of the queue 🧚

πŸ”₯ DESCRIPTION πŸ”₯

okay so listen up β€” host controller drivers should call this routine before calling usb_hcd_giveback_urb. like, this is the order, it's not a suggestion, it's giving prerequisites 😭

the HCD's private spinlock must be held and interrupts must be disabled. the way that this is non-negotiable... yeah. do not skip that part, i'm begging πŸ™ˆ

the actions carried out here are required for URB completion β€” so like, if you're wondering "can i just skip this and still complete my URB?", no bestie, that's the whole point of the function πŸ’€


πŸ‘‘ SEE ALSO πŸ‘‘

the kernel file lives at ./drivers/usb/core/hcd.c and honestly this whole friend group shows up together, so here's the full squad, no one left behind 🫢


and that's the page babes πŸ’– sign-off time: this one comes to you from ./drivers/usb/core, dated October 2026 β€” periodt, go hold that spinlock πŸŽ€βœ¨

πŸ“¦ where this page comes from