CVE-2026-90145
Description
In the Linux kernel, the following vulnerability has been resolved: hinic3: Fix skb linearization mismatch and drop skb when skb_checksum_help() failed Previously, hinic3_send_one_skb() cached the skb fragment count before calling hinic3_tx_offload(). If hinic3_tx_csum() falls back to skb_checksum_help() for unsupported tunnel packets, the skb may be linearized. Continuing to build the TX descriptor with the stale fragment count leads to a descriptor mismatch, which can trigger out-of-bounds DMA reads or IOMMU faults. Furthermore, the old code ignored the return value of skb_checksum_help(), transmitting corrupted packets with incomplete checksums upon failure. Fix this by: 1. Moving the hinic3_tx_offload() call before calculating 'num_sge' to ensure the correct fragment count is used if the SKB is linearized. 2. Propagating skb_checksum_help() errors and returning HINIC3_TX_OFFLOAD_INVALID to properly drop the skb.
How to fix
- Linux Linuxe794cdc5c369c1b06359e2fe03a8d9270f56bead, 96c3959770386b2913c62005f0d0c3151e0c01c3, d0c2bed6927cbfa2cb51f240b4812bf6916bce0e or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux Linux | 17fcb3dc12bbee8ec3e32ca1f60898f252e06b2d ≤ v < e794cdc5c369c1b06359e2fe03a8d9270f56bead, 17fcb3dc12bbee8ec3e32ca1f60898f252e06b2d ≤ v < 96c3959770386b2913c62005f0d0c3151e0c01c3, 17fcb3dc12bbee8ec3e32ca1f60898f252e06b2d ≤ v < d0c2bed6927cbfa2cb51f240b4812bf6916bce0e, 6.16 | e794cdc5c369c1b06359e2fe03a8d9270f56bead, 96c3959770386b2913c62005f0d0c3151e0c01c3, d0c2bed6927cbfa2cb51f240b4812bf6916bce0e |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.