On Tue, Jul 23, 2019 at 05:38:30PM +0200, Christoph Hellwig wrote: > On Mon, Jul 22, 2019 at 11:33:35AM -0400, Michael S. Tsirkin wrote: > > On Mon, Jul 22, 2019 at 04:55:09PM +0200, Eric Auger wrote: > > > Do not call dma_max_mapping_size for devices that have no DMA > > > mask set, otherwise we can hit a NULL pointer dereference. > > > > > > This occurs when a virtio-blk-pci device is protected with > > > a virtual IOMMU. > > > > > > Fixes: e6d6dd6c875e ("virtio: Introduce virtio_max_dma_size()") > > > Signed-off-by: Eric Auger <eric.au...@redhat.com> > > > Suggested-by: Christoph Hellwig <h...@lst.de> > > > > Christoph, I wonder why did you suggest this? > > The connection between dma_mask and dma_max_mapping_size > > is far from obvious. The documentation doesn't exist. > > Do we really have to teach all users about this hack? > > Why not just make dma_max_mapping_size DTRT? > > Because we should not call into dma API functions for devices that > are not DMA capable.
I'd rather call is_device_dma_capable then, better than poking at DMA internals. -- MST _______________________________________________ Virtualization mailing list Virtualization@lists.linux-foundation.org https://lists.linuxfoundation.org/mailman/listinfo/virtualization