STRUCT_FIELD
{ STRUCT_FIELD(eth, type),
{ STRUCT_FIELD(vlan, tag),
{ STRUCT_FIELD(vlan, type),
{ STRUCT_FIELD(ip4, ver),
{ STRUCT_FIELD(ip4, hdr_len),
{ STRUCT_FIELD(ip4, tos),
{ STRUCT_FIELD(ip4, tot_len),
{ STRUCT_FIELD(ip4, id),
{ STRUCT_FIELD(ip4, frag_off),
{ STRUCT_FIELD(ip4, ttl),
{ STRUCT_FIELD(ip4, protocol),
{ STRUCT_FIELD(ip4, check),
{ STRUCT_FIELD(ip4, saddr),
{ STRUCT_FIELD(ip4, daddr),
{ STRUCT_FIELD(udp, sport),
{ STRUCT_FIELD(udp, dport),
{ STRUCT_FIELD(udp, length),
{ STRUCT_FIELD(udp, csum),
{ STRUCT_FIELD(grh, ip_version),
{ STRUCT_FIELD(grh, traffic_class),
{ STRUCT_FIELD(grh, flow_label),
{ STRUCT_FIELD(grh, payload_length),
{ STRUCT_FIELD(grh, next_header),
{ STRUCT_FIELD(grh, hop_limit),
{ STRUCT_FIELD(grh, source_gid),
{ STRUCT_FIELD(grh, destination_gid),
{ STRUCT_FIELD(bth, opcode),
{ STRUCT_FIELD(bth, solicited_event),
{ STRUCT_FIELD(bth, mig_req),
{ STRUCT_FIELD(bth, pad_count),
{ STRUCT_FIELD(bth, transport_header_version),
{ STRUCT_FIELD(bth, pkey),
{ STRUCT_FIELD(bth, destination_qpn),
{ STRUCT_FIELD(bth, ack_req),
{ STRUCT_FIELD(bth, psn),
{ STRUCT_FIELD(deth, qkey),
{ STRUCT_FIELD(deth, source_qpn),
{ STRUCT_FIELD(lrh, virtual_lane),
{ STRUCT_FIELD(lrh, link_version),
{ STRUCT_FIELD(lrh, service_level),
{ STRUCT_FIELD(lrh, link_next_header),
{ STRUCT_FIELD(lrh, destination_lid),
{ STRUCT_FIELD(lrh, packet_length),
{ STRUCT_FIELD(lrh, source_lid),
{ STRUCT_FIELD(eth, dmac_h),
{ STRUCT_FIELD(eth, dmac_l),
{ STRUCT_FIELD(eth, smac_h),
{ STRUCT_FIELD(eth, smac_l),