ice_nearest_proto_id(9)
π ice_nearest_proto_id(9) β the manual page, but make it cute π
okay so bestie, welcome to the ice_nearest_proto_id(9) page from the Kernel API Manual β¨ this one is short and sweet and honestly iconic β it's a little helper that goes digging through your parser results looking for the closest protocol. let me walk you through it π«Ά
πΈ NAME πΈ
ice_nearest_proto_id β find nearest protocol ID β¨ literally that's the whole gig π
π SYNOPSIS π
bool ice_nearest_proto_id (struct ice_parser_result *rslt , u16 offset ,
u8 *proto_id , u16 *proto_off );
π¦ ARGUMENTS π¦
okay so here's the cast of characters, and every single one of them matters π
rsltβ pointer to a parser result instance π this is the little bag of protocols you're rummaging throughoffsetβ a min value for the protocol offset π like a "no thanks, too small" threshold, yk?proto_idβ the protocol ID (output) π this is where the answer gets handed back to youproto_offβ the protocol offset (output) π and this is where the offset of the winner gets handed back
β¨ DESCRIPTION β¨
From the protocols in rslt, find the nearest protocol that has offset larger than offset. ππ«
that's it, that's the vibe β it scans the protocols sitting in rslt and picks out the nearest one whose offset is bigger than the offset you passed in. closest match wins, no cap π§ββοΈ
π₯ RETURN π₯
if true, the protocol's ID and offset π (yes, it literally returns the ID and the offset back out through the output params, slay π )
π SEE ALSO π
the kernel file lives right here: ./drivers/net/ethernet/intel/ice/ice_parser.c π
and now the friend group π β every single one of these is linked, not skipping a single bestie:
ice_parser_sect_item_get(9), ice_parser_create_table(9), ice_imem_dump(9), ice_imem_bm_init(9), ice_imem_bkb_init(9), ice_imem_npkb_init(9), ice_imem_pgkb_init(9), ice_imem_alu_init(9), ice_imem_parse_item(9), ice_imem_table_get(9), ice_metainit_dump(9), ice_metainit_parse_item(9), ice_metainit_table_get(9), ice_bst_tcam_search(9), ice_pg_cam_dump(9), ice_pg_nm_cam_dump(9), ice_pg_cam_action_init(9), ice_pg_nm_cam_key_init(9), ice_pg_cam_key_init(9), ice_pg_cam_parse_item(9), ice_pg_sp_cam_parse_item(9), ice_pg_nm_cam_parse_item(9), ice_pg_nm_sp_cam_parse_item(9), ice_pg_cam_table_get(9), ice_pg_sp_cam_table_get(9), ice_pg_nm_cam_table_get(9), ice_pg_nm_sp_cam_table_get(9), ice_pg_cam_match(9), ice_pg_nm_cam_match(9), ice_bst_tcam_dump(9), ice_bst_alu_init(9), ice_bst_pgkb_init(9), ice_bst_npkb_init(9), ice_bst_parse_item(9), ice_bst_tcam_table_get(9), ice_bst_lbl_table_get(9), ice_bst_tcam_match(9), ice_ptype_mk_tcam_dump(9), ice_ptype_mk_tcam_table_get(9), ice_ptype_mk_tcam_match(9), ice_mk_grp_dump(9), ice_mk_grp_table_get(9), ice_proto_grp_dump(9), ice_proto_off_parse(9), ice_proto_grp_parse_item(9), ice_proto_grp_table_get(9), ice_flg_rd_dump(9), ice_flg_rd_parse_item(9), ice_flg_rd_table_get(9), ice_flg_redirect(9), ice_xlt_kb_dump(9), ice_kb_entry_init(9), ice_parse_kb_data(9), ice_xlt_kb_get_sw(9), ice_xlt_kb_get_acl(9), ice_xlt_kb_get_fd(9), ice_xlt_kb_get_rss(9), ice_xlt_kb_flag_get(9), ice_parser_create(9), ice_parser_destroy(9), ice_parser_run(9), ice_parser_result_dump(9), ice_parser_dvm_set(9), ice_parser_vxlan_tunnel_set(9), ice_parser_geneve_tunnel_set(9), ice_parser_ecpri_tunnel_set(9), ice_parser_profile_init(9), ice_parser_profile_dump(9)
πΈ and that's the whole page bestie, go read some protocols π
okay so one last thing before you close the tab β the source lives in ./drivers/net/ethernet/intel/ice, it's dated October 2026, and the version tag is just the classic ice_nearest_proto_id(9) π periodt, bye bestie π¦π
β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms