mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 13:14:02 +02:00
On a hardware analytics error, decompress retries through the software
fallback, which writes req->dst with the CPU while it is still mapped
DMA_FROM_DEVICE. With SWIOTLB active the later dma_unmap_sg() copies the
stale bounce buffer over req->dst, corrupting the result.
Unmap before the fallback runs. The async path unmaps inline; the sync
path signals the retry with -EAGAIN so iaa_comp_adecompress() runs the
fallback after unmapping.
Fixes:
|
||
|---|---|---|
| .. | ||
| iaa_crypto_comp_fixed.c | ||
| iaa_crypto_main.c | ||
| iaa_crypto_stats.c | ||
| iaa_crypto_stats.h | ||
| iaa_crypto.h | ||
| Kconfig | ||
| Makefile | ||