From: Yuval Mintz <Yuval.Mintz@xxxxxxxxxx> Date: Thu, 8 Jun 2017 19:13:16 +0300 > @@ -67,6 +79,21 @@ struct qed_ll2_stats { > u64 sent_bcast_pkts; > }; > > +struct qed_ll2_tx_pkt_info { > + u8 num_of_bds; > + u16 vlan; > + u8 bd_flags; > + u16 l4_hdr_offset_w; /* from start of packet */ > + enum qed_ll2_tx_dest tx_dest; > + enum qed_ll2_roce_flavor_type qed_roce_flavor; > + dma_addr_t first_frag; > + u16 first_frag_len; > + bool enable_ip_cksum; > + bool enable_l4_cksum; > + bool calc_ip_len; > + void *cookie; > +}; > + This layout is extremely inefficient, with lots of padding in between struct members. Group small u8 members and u16 members together so that they consume full 32-bit areas so you can eliminate all of the padding. -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html