can_rx_offload_offload_one(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– can_rx_offload_offload_one(9) πŸ’–

okay so bestie, this is from the Kernel API Manual, and the page is literally can_rx_offload_offload_one. We're reading one CAN frame from HW, no cap. ✨

🌸 NAME 🌸

can_rx_offload_offload_one β€” Read one CAN frame from HW πŸ’…

πŸ¦‹ SYNOPSIS πŸ¦‹

struct sk_buff * can_rx_offload_offload_one (struct can_rx_offload *offload , unsigned int n );

πŸŽ€ ARGUMENTS πŸŽ€

  • offload β€” pointer to rx_offload context
  • n β€” number of mailbox to read

✨ DESCRIPTION ✨

The task of this function is to read a CAN frame from mailbox n from the device and return the mailbox's content as a struct sk_buff. Like, that's the whole main character energy of it. 🫢

If struct can_rx_offload::skb_queue exceeds the maximal queue length (struct can_rx_offload::skb_queue_len_max) or no skb can be allocated, the mailbox contents is discarded by reading it into an overflow buffer. This way the mailbox is marked as free by the driver. Iconic free-the-mailbox behavior, fr fr. πŸ”₯

It gives you NULL if the mailbox n is empty. πŸ™ˆ

And it gives you ERR_PTR in case of an error. πŸ’€

🌈 RETURN 🌈

A pointer to skb containing the CAN frame on success. Slay. πŸ‘‘

⭐ SEE ALSO ⭐

Kernel file ./drivers/net/can/dev/rx-offload.c


xoxo, this came from ./drivers/net/can/dev, dated October 2026, and it's the can_rx_offload_offload_one(9) page πŸ’–βœ¨

πŸ“¦ where this page comes from