[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: hw/net/cadence_gem: TX checksum offload does not work for fragmented
|
From: |
Bin Meng |
|
Subject: |
Re: hw/net/cadence_gem: TX checksum offload does not work for fragmented packets |
|
Date: |
Sun, 26 Apr 2020 14:57:06 +0800 |
Hi Jason,
On Tue, Apr 21, 2020 at 10:31 PM Bin Meng <address@hidden> wrote:
>
> Hi,
>
> The cadence_gem does the TX checksum offload by:
>
> /* Is checksum offload enabled? */
> if (s->regs[GEM_DMACFG] & GEM_DMACFG_TXCSUM_OFFL) {
> net_checksum_calculate(tx_packet, total_bytes);
> }
>
> However this will only work for non-fragmented packets. For fragmented
> packets, it just corrupts the packets by inserting wrong checksum to
> the fist fragment, or corrupts the data to be sent in other fragments
> than the first one.
>
> Any idea of how to solve this cleanly?
I suspect this is a common issue for all NIC models in QEMU. Could you
please comment?
Regards,
Bin