You are not logged in.

#1 2017-04-29 12:11:48

collector1871
Member
From: Poland
Registered: 2016-12-05
Posts: 51

xrandr, udl (DisplayLink driver) and "DMA: Out of SW-IOMMU space..."

Hello

I am using Arch with DisplayLink USB graphic adapter  : https://wiki.archlinux.org/index.php/DisplayLink
I am using udl driver.

And when I am trying to run xrandr, then dmesg is showing these errors:

51.163812] udl 2-1.3:1.0: swiotlb buffer is full (sz: 1687552 bytes)
[   51.163817] udl 2-1.3:1.0: DMA: Out of SW-IOMMU space for 1687552 bytes
[   58.887605] udl 2-1.3:1.0: swiotlb buffer is full (sz: 884736 bytes)
[   58.887609] udl 2-1.3:1.0: DMA: Out of SW-IOMMU space for 884736 bytes

and USB adapter is not working.
I need to re-run xrandr multiple times, and it will work (for example) after 5-7 times re-run.

I am 98% sure that problem with USB adapter is connected with error: "DMA: Out of SW-IOMMU space".
Please also notice that this error apeared after one of kernel update (I don`t remember which one).

how can I avoid error "udl 2-1.3:1.0: DMA: Out of SW-IOMMU space..." error ?
Should I change kernel to previous version?

Last edited by collector1871 (2017-04-29 12:19:33)


My: AUR and homepage .

Offline

#2 2017-05-22 22:35:17

Alcasa
Member
Registered: 2013-05-18
Posts: 46

Re: xrandr, udl (DisplayLink driver) and "DMA: Out of SW-IOMMU space..."

I have a similar setup with a displaylink usb2 device. Downgrading to a lower mesa version (which can become quite complicated, since you have to install a lot of old packages) will resolve the issue. But I suspect to be caused by some deeper lying issues, since xrandr --setprovideroutputsource is no longer needed to attach the new display.

Do you have an USB3 device? If so, the official displaylink forum might be able to help you resolve the issue.

Offline

#3 2017-05-23 14:43:10

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,911

Re: xrandr, udl (DisplayLink driver) and "DMA: Out of SW-IOMMU space..."

This does look like a kernel issue, check if linux-lts kernel also has it.

linux and linux-lts don't conflict, all you need to do is install linux-lts and add an entry to your bootloader for it.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

Board footer

Powered by FluxBB