H A D | netio_intf.h | 580 #define __NETIO_PKT_NOTIF_HEADER_M(mda, pkt) ((pkt)->__notif_header) 581 #define __NETIO_PKT_IPP_HANDLE_M(mda, pkt) ((pkt)->__packet.bits.__ipp_handle) 583 #define __NETIO_PKT_QUEUE_M(mda, pkt) ((pkt)->__packet.bits.__queue) 584 #define __NETIO_PKT_FLAGS_M(mda, pkt) ((mda)->__flags) 596 #define NETIO_PKT_GOOD_CHECKSUM_M(mda, pkt) \ 597 NETIO_PKT_L4_CSUM_CORRECT_M(mda, pkt) 731 * @param[in] mda Pointer to packet's standard metadata. 736 NETIO_PKT_CUSTOM_HEADER_LENGTH_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_CUSTOM_HEADER_LENGTH_M() argument 744 return ((mda->__flags >> (_NETIO_PKT_CUSTOM_LEN_SHIFT - 2)) & NETIO_PKT_CUSTOM_HEADER_LENGTH_M() 756 * @param[in] mda Pointer to packet's standard metadata. 761 NETIO_PKT_CUSTOM_LENGTH_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_CUSTOM_LENGTH_M() argument 775 * @param[in] mda Pointer to packet's standard metadata. 780 NETIO_PKT_CUSTOM_DATA_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_CUSTOM_DATA_M() argument 789 * @param[in] mda Pointer to packet's standard metadata. 794 NETIO_PKT_L2_HEADER_LENGTH_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L2_HEADER_LENGTH_M() argument 802 return ((mda->__flags >> (_NETIO_PKT_L2_LEN_SHIFT - 2)) & NETIO_PKT_L2_HEADER_LENGTH_M() 810 * @param[in] mda Pointer to packet's standard metadata. 815 NETIO_PKT_L2_LENGTH_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L2_LENGTH_M() argument 817 return (NETIO_PKT_CUSTOM_LENGTH_M(mda, pkt) - NETIO_PKT_L2_LENGTH_M() 818 NETIO_PKT_CUSTOM_HEADER_LENGTH_M(mda,pkt)); NETIO_PKT_L2_LENGTH_M() 825 * @param[in] mda Pointer to packet's standard metadata. 830 NETIO_PKT_L2_DATA_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L2_DATA_M() argument 832 return (NETIO_PKT_CUSTOM_DATA_M(mda, pkt) + NETIO_PKT_L2_DATA_M() 833 NETIO_PKT_CUSTOM_HEADER_LENGTH_M(mda, pkt)); NETIO_PKT_L2_DATA_M() 841 * @param[in] mda Pointer to packet's standard metadata. 846 NETIO_PKT_L3_LENGTH_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L3_LENGTH_M() argument 848 return (NETIO_PKT_L2_LENGTH_M(mda, pkt) - NETIO_PKT_L3_LENGTH_M() 849 NETIO_PKT_L2_HEADER_LENGTH_M(mda,pkt)); NETIO_PKT_L3_LENGTH_M() 858 * @param[in] mda Pointer to packet's standard metadata. 863 NETIO_PKT_L3_DATA_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L3_DATA_M() argument 865 return (NETIO_PKT_L2_DATA_M(mda, pkt) + NETIO_PKT_L3_DATA_M() 866 NETIO_PKT_L2_HEADER_LENGTH_M(mda, pkt)); NETIO_PKT_L3_DATA_M() 883 * @param[in] mda Pointer to packet's standard metadata. 888 NETIO_PKT_ORDINAL_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_ORDINAL_M() argument 890 return mda->__packet_ordinal; NETIO_PKT_ORDINAL_M() 911 * @param[in] mda Pointer to packet's standard metadata. 916 NETIO_PKT_GROUP_ORDINAL_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_GROUP_ORDINAL_M() argument 918 return mda->__group_ordinal; NETIO_PKT_GROUP_ORDINAL_M() 930 * @param[in] mda Pointer to packet's standard metadata. 935 NETIO_PKT_VLAN_ID_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_VLAN_ID_M() argument 937 int vl = (mda->__flags >> _NETIO_PKT_VLAN_SHIFT) & _NETIO_PKT_VLAN_RMASK; NETIO_PKT_VLAN_ID_M() 945 pkt_p = (unsigned short*) NETIO_PKT_L2_DATA_M(mda, pkt); NETIO_PKT_VLAN_ID_M() 946 index = (mda->__flags >> _NETIO_PKT_TYPE_SHIFT) & _NETIO_PKT_TYPE_RMASK; NETIO_PKT_VLAN_ID_M() 967 * @param[in] mda Pointer to packet's standard metadata. 972 NETIO_PKT_ETHERTYPE_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_ETHERTYPE_M() argument 974 unsigned short* pkt_p = (unsigned short*) NETIO_PKT_L2_DATA_M(mda, pkt); NETIO_PKT_ETHERTYPE_M() 975 int index = (mda->__flags >> _NETIO_PKT_TYPE_SHIFT) & _NETIO_PKT_TYPE_RMASK; NETIO_PKT_ETHERTYPE_M() 1010 * @param[in] mda Pointer to packet's standard metadata. 1015 NETIO_PKT_FLOW_HASH_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_FLOW_HASH_M() argument 1017 return mda->__flow_hash; NETIO_PKT_FLOW_HASH_M() 1033 * @param[in] mda Pointer to packet's standard metadata. 1038 NETIO_PKT_USER_DATA_0_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_USER_DATA_0_M() argument 1040 return mda->__user_data_0; NETIO_PKT_USER_DATA_0_M() 1056 * @param[in] mda Pointer to packet's standard metadata. 1061 NETIO_PKT_USER_DATA_1_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_USER_DATA_1_M() argument 1063 return mda->__user_data_1; NETIO_PKT_USER_DATA_1_M() 1070 * @param[in] mda Pointer to packet's standard metadata. 1075 NETIO_PKT_L4_CSUM_CALCULATED_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L4_CSUM_CALCULATED_M() argument 1077 return !(mda->__flags & _NETIO_PKT_NO_L4_CSUM_MASK); NETIO_PKT_L4_CSUM_CALCULATED_M() 1085 * @param[in] mda Pointer to packet's standard metadata. 1090 NETIO_PKT_L4_CSUM_CORRECT_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L4_CSUM_CORRECT_M() argument 1092 return !(mda->__flags & NETIO_PKT_L4_CSUM_CORRECT_M() 1100 * @param[in] mda Pointer to packet's standard metadata. 1105 NETIO_PKT_L3_CSUM_CALCULATED_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L3_CSUM_CALCULATED_M() argument 1107 return !(mda->__flags & _NETIO_PKT_NO_L3_CSUM_MASK); NETIO_PKT_L3_CSUM_CALCULATED_M() 1115 * @param[in] mda Pointer to packet's standard metadata. 1120 NETIO_PKT_L3_CSUM_CORRECT_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_L3_CSUM_CORRECT_M() argument 1122 return !(mda->__flags & NETIO_PKT_L3_CSUM_CORRECT_M() 1131 * @param[in] mda Pointer to packet's standard metadata. 1137 NETIO_PKT_ETHERTYPE_RECOGNIZED_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_ETHERTYPE_RECOGNIZED_M() argument 1139 return !(mda->__flags & _NETIO_PKT_TYPE_UNRECOGNIZED_MASK); NETIO_PKT_ETHERTYPE_RECOGNIZED_M() 1153 * @param[in] mda Pointer to packet's standard metadata. 1158 NETIO_PKT_STATUS_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_STATUS_M() argument 1170 * @param[in] mda Pointer to packet's standard metadata. 1175 NETIO_PKT_BAD_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_BAD_M() argument 1177 return ((NETIO_PKT_STATUS_M(mda, pkt) & 1) && NETIO_PKT_BAD_M() 1178 (NETIO_PKT_ETHERTYPE_RECOGNIZED_M(mda, pkt) || NETIO_PKT_BAD_M() 1179 NETIO_PKT_STATUS_M(mda, pkt) == NETIO_PKT_STATUS_BAD)); NETIO_PKT_BAD_M() 1291 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_BAD() local 1293 return NETIO_PKT_BAD_M(mda, pkt); NETIO_PKT_BAD() 1310 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_CUSTOM_HEADER_LENGTH() local 1312 return NETIO_PKT_CUSTOM_HEADER_LENGTH_M(mda, pkt); NETIO_PKT_CUSTOM_HEADER_LENGTH() 1329 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_CUSTOM_LENGTH() local 1331 return NETIO_PKT_CUSTOM_LENGTH_M(mda, pkt); NETIO_PKT_CUSTOM_LENGTH() 1348 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_CUSTOM_DATA() local 1350 return NETIO_PKT_CUSTOM_DATA_M(mda, pkt); NETIO_PKT_CUSTOM_DATA() 1371 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L2_HEADER_LENGTH() local 1373 return NETIO_PKT_L2_HEADER_LENGTH_M(mda, pkt); NETIO_PKT_L2_HEADER_LENGTH() 1395 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L2_LENGTH() local 1397 return NETIO_PKT_L2_LENGTH_M(mda, pkt); NETIO_PKT_L2_LENGTH() 1419 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L2_DATA() local 1421 return NETIO_PKT_L2_DATA_M(mda, pkt); NETIO_PKT_L2_DATA() 1444 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L3_LENGTH() local 1446 return NETIO_PKT_L3_LENGTH_M(mda, pkt); NETIO_PKT_L3_LENGTH() 1470 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L3_DATA() local 1472 return NETIO_PKT_L3_DATA_M(mda, pkt); NETIO_PKT_L3_DATA() 1497 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_ORDINAL() local 1499 return NETIO_PKT_ORDINAL_M(mda, pkt); NETIO_PKT_ORDINAL() 1526 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_GROUP_ORDINAL() local 1528 return NETIO_PKT_GROUP_ORDINAL_M(mda, pkt); NETIO_PKT_GROUP_ORDINAL() 1544 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_VLAN_ID() local 1546 return NETIO_PKT_VLAN_ID_M(mda, pkt); NETIO_PKT_VLAN_ID() 1562 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_ETHERTYPE() local 1564 return NETIO_PKT_ETHERTYPE_M(mda, pkt); NETIO_PKT_ETHERTYPE() 1599 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_FLOW_HASH() local 1601 return NETIO_PKT_FLOW_HASH_M(mda, pkt); NETIO_PKT_FLOW_HASH() 1623 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_USER_DATA_0() local 1625 return NETIO_PKT_USER_DATA_0_M(mda, pkt); NETIO_PKT_USER_DATA_0() 1647 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_USER_DATA_1() local 1649 return NETIO_PKT_USER_DATA_1_M(mda, pkt); NETIO_PKT_USER_DATA_1() 1662 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L4_CSUM_CALCULATED() local 1664 return NETIO_PKT_L4_CSUM_CALCULATED_M(mda, pkt); NETIO_PKT_L4_CSUM_CALCULATED() 1678 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L4_CSUM_CORRECT() local 1680 return NETIO_PKT_L4_CSUM_CORRECT_M(mda, pkt); NETIO_PKT_L4_CSUM_CORRECT() 1693 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L3_CSUM_CALCULATED() local 1695 return NETIO_PKT_L3_CSUM_CALCULATED_M(mda, pkt); NETIO_PKT_L3_CSUM_CALCULATED() 1709 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_L3_CSUM_CORRECT() local 1711 return NETIO_PKT_L3_CSUM_CORRECT_M(mda, pkt); NETIO_PKT_L3_CSUM_CORRECT() 1726 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_ETHERTYPE_RECOGNIZED() local 1728 return NETIO_PKT_ETHERTYPE_RECOGNIZED_M(mda, pkt); NETIO_PKT_ETHERTYPE_RECOGNIZED() 1904 * @param[in,out] mda Pointer to packet's standard metadata. 1908 NETIO_PKT_PREPEND_AVAIL_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_PREPEND_AVAIL_M() argument 1911 NETIO_PKT_CUSTOM_HEADER_LENGTH_M(mda, pkt); NETIO_PKT_PREPEND_AVAIL_M() 1949 netio_pkt_metadata_t* mda = NETIO_PKT_METADATA(pkt); NETIO_PKT_PREPEND_AVAIL() local 1951 return NETIO_PKT_PREPEND_AVAIL_M(mda, pkt); NETIO_PKT_PREPEND_AVAIL() 2002 * @param[in] mda Pointer to packet's minimal metadata. 2006 NETIO_PKT_FLUSH_METADATA_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_FLUSH_METADATA_M() argument 2015 * @param[in] mda Pointer to packet's metadata. 2019 NETIO_PKT_INV_METADATA_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_INV_METADATA_M() argument 2028 * @param[in] mda Pointer to packet's metadata. 2032 NETIO_PKT_FLUSH_INV_METADATA_M(netio_pkt_metadata_t* mda, netio_pkt_t* pkt) NETIO_PKT_FLUSH_INV_METADATA_M() argument 2736 netio_pkt_metadata_t* mda = &pkt->__metadata; netio_pkt_vector_set() local 2737 v->buffer_address_low = (uintptr_t) NETIO_PKT_L2_DATA_M(mda, pkt) & 0xFF; netio_pkt_vector_set() 2738 v->size = NETIO_PKT_L2_LENGTH_M(mda, pkt); netio_pkt_vector_set()
|