velocity_rx_copy(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ velocity_rx_copy ✨

Okay so this is the manual page for velocity_rx_copy, bestie β€” it's giving kernel API realness from the velocity_rx_copy(9) corner of the manual-verse, and we're about to get into it. πŸ’…


🌸 NAME 🌸

velocity_rx_copy β€” in place Rx copy for small packets

Like, it copies stuff for received packets but in place and only when they're smol. Iconic behavior honestly.


πŸ¦‹ SYNOPSIS πŸ¦‹

int velocity_rx_copy (struct sk_buff **rx_skb , int pkt_size , struct
velocity_info *vptr );

That's the whole vibe right there. Three args, returns an int. Slay.


πŸŽ€ ARGUMENTS πŸŽ€

  • rx_skb β€” the network layer packet buffer candidate. It's the skb that's like, in the running to be the one, y'know? The candidate. πŸ‘‘
  • pkt_size β€” the received data size. Literally how much data we received, no cap.
  • vptr β€” the velocity adapter. That's our main character struct fr fr.

πŸ’– DESCRIPTION πŸ’–

Here's the tea: this function replaces the current skb that is scheduled for Rx processing with a shorter, immediately allocated skb β€” but only if the received packet is small enough. So it's like a glow-up swap for tiny packets. ✨

And listen, if the received packet is too big? Or if memory is exhausted? This function returns a negative value. So yeah, negative return = something went wrong, bestie. Not the vibe. πŸ˜­πŸ’€


🌈 SEE ALSO 🌈

Okay buckle up because this list is long and honestly it ate. First off, check out the kernel file:

./drivers/net/ethernet/via/via-velocity.c

And then we got the whole friend group here β€” every single one of these, no skips:

mac_get_cam_mask(9), mac_set_cam_mask(9), mac_set_cam(9), mac_wol_reset(9), get_chip_name(9), velocity_set_int_opt(9), velocity_set_bool_opt(9), velocity_get_options(9), velocity_init_cam_filter(9), velocity_rx_reset(9), velocity_get_opt_media_mode(9), safe_disable_mii_autopoll(9), enable_mii_autopoll(9), velocity_mii_read(9), mii_check_media_mode(9), velocity_mii_write(9), set_mii_flow_control(9), mii_set_auto_on(9), velocity_set_media_mode(9), velocity_print_link_status(9), enable_flow_control_ability(9), velocity_soft_reset(9), velocity_set_multi(9), mii_init(9), setup_queue_timers(9), setup_adaptive_interrupts(9), velocity_init_registers(9), velocity_init_dma_rings(9), velocity_alloc_rx_buf(9), velocity_free_rd_ring(9), velocity_init_rd_ring(9), velocity_init_td_ring(9), velocity_free_dma_rings(9), velocity_free_tx_buf(9), velocity_free_td_ring(9), velocity_error(9), velocity_tx_srv(9), velocity_rx_csum(9), velocity_iph_realign(9), velocity_receive_frame(9), velocity_rx_srv(9), velocity_intr(9), velocity_open(9), velocity_shutdown(9), velocity_change_mtu(9), velocity_poll_controller(9), velocity_mii_ioctl(9), velocity_ioctl(9), velocity_get_stats(9), velocity_close(9), velocity_xmit(9), velocity_init_info(9), velocity_get_pci_info(9), velocity_get_platform_info(9), velocity_print_info(9), velocity_probe(9), velocity_remove(9), wol_calc_crc(9), velocity_set_wol(9), velocity_save_context(9), velocity_restore_context(9), velocity_ethtool_up(9), velocity_ethtool_down(9), velocity_init_module(9), velocity_cleanup_module(9)

Like I said. The whole squad. 🫢πŸ”₯


And that's the page, bestie! This lil beauty lives in ./drivers/net/ethernet/via, dated October 2026, and honestly? She's serving kernel API realness and we're obsessed. πŸ’œπŸŽ€πŸ¦‹

πŸ“¦ where this page comes from