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.4-2' of git://git.infradead.org/users/hch/dma-mapping

Pull dma-mapping fix from Christoph Hellwig:
"Fix a regression in the intel-iommu get_required_mask conversion
(Arvind Sankar)"

* tag 'dma-mapping-5.4-2' of git://git.infradead.org/users/hch/dma-mapping:
iommu/vt-d: Return the correct dma mask when we are bypassing the IOMMU

+9 -1
+9 -1
drivers/iommu/intel-iommu.c
··· 3471 3471 if (dev->coherent_dma_mask && dev->coherent_dma_mask < dma_mask) 3472 3472 dma_mask = dev->coherent_dma_mask; 3473 3473 3474 - if (dma_mask >= dma_get_required_mask(dev)) 3474 + if (dma_mask >= dma_direct_get_required_mask(dev)) 3475 3475 return false; 3476 3476 3477 3477 /* ··· 3775 3775 return nelems; 3776 3776 } 3777 3777 3778 + static u64 intel_get_required_mask(struct device *dev) 3779 + { 3780 + if (!iommu_need_mapping(dev)) 3781 + return dma_direct_get_required_mask(dev); 3782 + return DMA_BIT_MASK(32); 3783 + } 3784 + 3778 3785 static const struct dma_map_ops intel_dma_ops = { 3779 3786 .alloc = intel_alloc_coherent, 3780 3787 .free = intel_free_coherent, ··· 3794 3787 .dma_supported = dma_direct_supported, 3795 3788 .mmap = dma_common_mmap, 3796 3789 .get_sgtable = dma_common_get_sgtable, 3790 + .get_required_mask = intel_get_required_mask, 3797 3791 }; 3798 3792 3799 3793 static void