STRUCT PDS_CORE_LIF_SETATTR_CMD(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct pds_core_lif_setattr_cmd(9) β€” from the Kernel API Manual, bestie

okay so picture this: it's a man page, it's section 9, and it lives in the Kernel API Manual. the star of the show is struct pds_core_lif_setattr_cmd, and honestly? it's giving "little struct, big job." πŸŽ€


✨ NAME ✨

struct pds_core_lif_setattr_cmd β€” set LIF attributes on the NIC. that's it. that's the whole vibe. you're literally telling the NIC what the LIF should be. slay. πŸ¦‹


🌸 SYNOPSIS 🌸

no cap, here's the exact shape of it, character for character:

struct pds_core_lif_setattr_cmd {
    u8 opcode;
    u8 attr;
    __le16 client_id;
    union {
      u8 state;
      char name[PDS_CORE_IFNAMSIZ];
      __le64 features;
      u8 stats_ctl;
      u8 rsvd[60];
    };
 };

look at that little union just vibing in the middle with no name. an icon. πŸ’…


πŸ‘‘ Members πŸ‘‘

bestie, let's go member by member, i refuse to skip a single one:

  • opcode β€” the opcode, and it is PDS_AQ_CMD_LIF_SETATTR. literally its entire personality. ⭐
  • attr β€” the attribute type (an enum pds_core_lif_attr). this is the "which thing are we setting" knob. πŸ”₯
  • client_id β€” the client identifier. every client gets one, and this is it. 🫢
  • {unnamed_union} β€” it's anonymous. no name. no label. just pure mystery and main character energy. 😭 the members inside it are:
    • state β€” the LIF state (an enum pds_core_lif_state). 🧚
    • name β€” the name string, and 0 terminated β€” important, do not forget the 0, i'm serious. πŸ“
    • features β€” features (an enum pds_core_hw_features). ✨
    • stats_ctl β€” stats control commands (an enum pds_core_stats_ctl_cmd). πŸ“Š
    • rsvd β€” command buffer padding. it's u8 rsvd[60] and it's just there holding space, respectfully. πŸ’€
  • and that's the whole struct, mwah. πŸ’–

🌈 SEE ALSO 🌈

okay this list is LONG and i am obsessed with it β€” it's the whole friend group, iykyk. first up, the file where this thing actually lives:

  • kernel file ./include/linux/pds/pds_adminq.h

and then every single cousin, in order, no cuts, no skips:

  • struct pds_core_notifyq_event(9)
  • struct pds_core_link_change_event(9)
  • struct pds_core_reset_event(9)
  • struct pds_core_client_event(9)
  • struct pds_core_notifyq_cmd(9)
  • struct pds_core_client_reg_cmd(9)
  • struct pds_core_client_reg_comp(9)
  • struct pds_core_client_unreg_cmd(9)
  • struct pds_core_client_request_cmd(9)
  • enum pds_core_logical_qtype(9)
  • union pds_core_lif_config(9)
  • struct pds_core_lif_status(9)
  • struct pds_core_lif_info(9)
  • struct pds_core_lif_identity(9)
  • struct pds_core_lif_identify_cmd(9)
  • struct pds_core_lif_identify_comp(9)
  • struct pds_core_lif_init_cmd(9)
  • struct pds_core_lif_init_comp(9)
  • struct pds_core_lif_reset_cmd(9)
  • enum pds_core_lif_attr(9)
  • struct pds_core_lif_setattr_comp(9)
  • struct pds_core_lif_getattr_cmd(9)
  • struct pds_core_lif_getattr_comp(9)
  • struct pds_core_q_identity(9)
  • struct pds_core_q_identify_cmd(9)
  • struct pds_core_q_identify_comp(9)
  • struct pds_core_q_init_cmd(9)
  • struct pds_core_q_init_comp(9)
  • struct pds_vdpa_cmd(9)
  • struct pds_vdpa_init_cmd(9)
  • struct pds_vdpa_ident(9)
  • struct pds_vdpa_ident_cmd(9)
  • struct pds_vdpa_status_cmd(9)
  • enum pds_vdpa_attr(9)
  • struct pds_vdpa_setattr_cmd(9)
  • struct pds_vdpa_vq_init_cmd(9)
  • struct pds_vdpa_vq_init_comp(9)
  • struct pds_vdpa_vq_reset_cmd(9)
  • struct pds_vdpa_vq_reset_comp(9)
  • struct pds_vdpa_set_features_cmd(9)
  • struct pds_lm_cmd(9)
  • struct pds_lm_state_size_cmd(9)
  • struct pds_lm_state_size_comp(9)
  • struct pds_lm_suspend_cmd(9)
  • struct pds_lm_suspend_status_cmd(9)
  • struct pds_lm_resume_cmd(9)
  • struct pds_lm_sg_elem(9)
  • struct pds_lm_save_cmd(9)
  • struct pds_lm_restore_cmd(9)
  • union pds_lm_dev_state(9)
  • struct pds_lm_dirty_region_info(9)
  • struct pds_lm_dirty_status_cmd(9)
  • enum pds_lm_dirty_bmp_type(9)
  • struct pds_lm_dirty_status_comp(9)
  • struct pds_lm_dirty_enable_cmd(9)
  • struct pds_lm_dirty_disable_cmd(9)
  • struct pds_lm_dirty_seq_ack_cmd(9)
  • struct pds_lm_host_vf_status_cmd(9)
  • struct pds_fwctl_cmd(9)
  • struct pds_fwctl_comp(9)
  • struct pds_fwctl_ident_cmd(9)
  • struct pds_fwctl_ident(9)
  • struct pds_fwctl_query_cmd(9)
  • struct pds_fwctl_query_comp(9)
  • struct pds_fwctl_query_data_endpoint(9)
  • struct pds_fwctl_query_data_operation(9)
  • struct pds_fwctl_query_data(9)
  • struct pds_fwctl_rpc_cmd(9)
  • struct pds_sg_elem(9)
  • struct pds_fwctl_rpc_comp(9)

like… seventy-something references and every single one made the cut. no one left behind. πŸ’œ


anyway that's the whole page, bestie β€” go set some LIF attributes, you're gonna eat. 🫢✨

this lil gem comes to you from ./include/linux/pds, dated October 2026, and its header still says struct pds_..._setattr_cmd(9) like the mysterious legend it is. mwah, bye! πŸ’–

πŸ“¦ where this page comes from