Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'dma-mapping-5.19-2022-06-26' of git://git.infradead.org/users/hch/dma-mapping

Pull dma-mapping fix from Christoph Hellwig:

- pass the correct size to dma_set_encrypted() when freeing memory
(Dexuan Cui)

* tag 'dma-mapping-5.19-2022-06-26' of git://git.infradead.org/users/hch/dma-mapping:
dma-direct: use the correct size for dma_set_encrypted()

+2 -3
+2 -3
kernel/dma/direct.c
··· 357 357 } else { 358 358 if (IS_ENABLED(CONFIG_ARCH_HAS_DMA_CLEAR_UNCACHED)) 359 359 arch_dma_clear_uncached(cpu_addr, size); 360 - if (dma_set_encrypted(dev, cpu_addr, 1 << page_order)) 360 + if (dma_set_encrypted(dev, cpu_addr, size)) 361 361 return; 362 362 } 363 363 ··· 392 392 struct page *page, dma_addr_t dma_addr, 393 393 enum dma_data_direction dir) 394 394 { 395 - unsigned int page_order = get_order(size); 396 395 void *vaddr = page_address(page); 397 396 398 397 /* If cpu_addr is not from an atomic pool, dma_free_from_pool() fails */ ··· 399 400 dma_free_from_pool(dev, vaddr, size)) 400 401 return; 401 402 402 - if (dma_set_encrypted(dev, vaddr, 1 << page_order)) 403 + if (dma_set_encrypted(dev, vaddr, size)) 403 404 return; 404 405 __dma_direct_free_pages(dev, page, size); 405 406 }