e1000, e1000e: Move per-packet TX offload flags out of context state
sum_needed and cptse flags are received from the guest within each transmit data descriptor. They are not part of the offload context; instead, they determine how to apply a previously received context to the packet being transmitted: - If cptse is set, perform both segmentation and checksum offload using the parameters in the TSO context; otherwise just do checksum offload. (Currently the e1000 device incorrectly stores only one context, which will be fixed in a subsequent patch.) - Depending on the bits set in sum_needed, possibly perform L4 checksum offload and/or IP checksum offload, using the parameters in the appropriate context. Move these flags out of struct e1000x_txd_props, which is otherwise dedicated to storing values from a context descriptor, and into the per-packet TX struct. Signed-off-by:Ed Swierk <eswierk@skyportsystems.com> Signed-off-by:
Jason Wang <jasowang@redhat.com>
Showing
- hw/net/e1000.c 16 additions, 14 deletionshw/net/e1000.c
- hw/net/e1000e.c 2 additions, 2 deletionshw/net/e1000e.c
- hw/net/e1000e_core.c 8 additions, 8 deletionshw/net/e1000e_core.c
- hw/net/e1000e_core.h 2 additions, 0 deletionshw/net/e1000e_core.h
- hw/net/e1000x_common.h 0 additions, 2 deletionshw/net/e1000x_common.h
Loading
Please register or sign in to comment