DisplayLink Forum

DisplayLink Forum (https://displaylink.org/forum/index.php)
-   Linux and Open Source (https://displaylink.org/forum/forumdisplay.php?f=29)
-   -   [Gentoo] DisplayManager userland crashing, no displays (https://displaylink.org/forum/showthread.php?t=63983)

mikopp 08-06-2015 07:26 AM

[Gentoo] DisplayManager userland crashing, no displays
 
Hi All,

I've been trying the display link driver on Gentoo:

Kernel: 3.18.14
Xorg: 1.16.4

Module works (usb, ethernet) but I get no new displays in xrandr and DisplayManager userland is crashing with segmentation fault after a minute or two. There is nothing useful in the log, which seems binary data.
Anything I can do to get it work?

Thanks
Mike

mlukaszek 08-06-2015 07:53 AM

Quote:

Originally Posted by mikopp (Post 77958)
trying the display link driver on Gentoo
(...)
but I get no new displays in xrandr and DisplayManager userland is crashing with segmentation fault after a minute or two. There is nothing useful in the log, which seems binary data.

If you zip the logs from /var/log/displaylink and attach here we may be able figure things out.
If you have a core dump from the crashing app somewhere (exact location depends on a distribution), please compress it and send to us as well.

Thanks,
Michal

mikopp 08-06-2015 09:31 AM

Log file
 
1 Attachment(s)
attached log directory, I will reproduce the crash later to get a core dump, where shall I send it, file going to be bigger I guess.

mlukaszek 08-06-2015 10:29 AM

Quote:

Originally Posted by mikopp (Post 77964)
attached log directory, I will reproduce the crash later to get a core dump, where shall I send it, file going to be bigger I guess.

Make sure both libevdi.so and libusb-1.0.so.0.1.0 (and the two symlinks to it) are in /usr/lib/displaylink next to DisplayLinkManager application, and that they are all the same (and compatible) type of binaries (32 or 64 bit). Also, DisplayLinkManager must currently be run as root. Not much more I could tell from logs, so it'd be interesting to see the dump.

If you have a file to send that's too big for this forum, it's probably the easiest to use one of the file sharing sites and let us know what the link is.

Thanks,
Michal

mikopp 08-06-2015 11:31 AM

2 Attachment(s)
I ran it as root in 64bit both inside xsession and in a separate terminal. 64bit crashes nearly immediately. core dump and new log attached as zip here.

mikopp 08-06-2015 11:36 AM

1 Attachment(s)
more logs, this time with running it prior to kde-session start, no difference in seg fault, but logs where in install directory as I made it writable for coredump

mlukaszek 08-06-2015 11:57 AM

Thanks for these. I raised it internally to have a deeper look.

mlukaszek 08-06-2015 02:22 PM

Are you sure you are running DisplayLink Manager application as a root? It looks like it cannot communicate with evdi kernel driver through the libevdi library.

Thanks,
Michal

mikopp 08-10-2015 12:23 PM

I did both, user and root, but I'll try again.

mikopp 08-10-2015 12:33 PM

run as root
 
2 Attachment(s)
# loaded module and verified
evdi 23854 0
drm_kms_helper 61022 2 i915,evdi
drm 233198 8 i915,evdi,drm_kms_helper
# ran ran DisplayManager as root, but the xsession was of course already running when I did that.
# connected displaylink via USB, lsusb shows its there
# connected the screen via displayport on the dock, roughly 10-20 seconds later crash.

This time I also see an edid file which represents the screen that I plugged in. part of log.zip

mikopp 08-18-2015 06:17 AM

any update on this?

mlukaszek 08-18-2015 07:45 AM

The application is crashing as it would when evdi kernel module is not loaded. We have already fixed the crash for next release, but this does not explain why you experience this if the evdi is indeed loaded.

Can you check if you can access /sys/devices/evdi folder? The application will try to write to files which are exposed there. Any problems with sysfs would be fatal - maybe it is a read-only filesystem?

Also, could you attach your dmesg log - preferably with maximum logging level set for evdi following instructions in http://displaylink.org/forum/showpos...30&postcount=5 .

Thanks,
Michal

mikopp 08-18-2015 08:11 AM

directory is readable by users. Writable by root
Code:

ls -la /sys/devices/evdi
total 0
drwxr-xr-x  3 root root    0 18. Aug 10:07 .
drwxr-xr-x 13 root root    0 10. Aug 12:35 ..
--w-------  1 root root 4096 10. Aug 14:27 add
-r--r--r--  1 root root 4096 18. Aug 10:07 count
-rw-r--r--  1 root root 4096 18. Aug 10:07 loglevel
lrwxrwxrwx  1 root root    0 18. Aug 10:07 module -> ../../module/evdi
drwxr-xr-x  2 root root    0 11. Aug 12:21 power
--w-------  1 root root 4096 18. Aug 10:07 remove_all
-rw-r--r--  1 root root 4096 11. Aug 12:21 uevent
-r--r--r--  1 root root 4096 18. Aug 10:07 version

Sysfs mount: sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)

I'll do another try of evdi in a bit with increased log level and dmesg log

mikopp 08-18-2015 08:51 AM

dmesg log
 
1 Attachment(s)
attached find the dmesg log, it does contain several errors

mikopp 08-25-2015 08:03 AM

any update on this? did the last logs reveal anything?

mikopp 09-01-2015 02:39 PM

Ran with new version...
 
2 Attachment(s)
I ran with the new version 138. Good news its no longer crashing, but no display in xrandr, no provider. dmesg seems to indicate that the display is not found although I get the correct edid logged again.

new logs and new dmesg

maggu2810 09-02-2015 08:58 PM

So, I am own a D3100 and using Gentoo, too.

After building and loading evdi.ko and starting DisplayLinkManager I got a few lines in my system log (after a few seconds):

Loading evdi.ko
Code:

Sep 02 22:41:13 m3800 kernel: [ ] evdi_init Initialising logging on level 5
After starting DisplayLinkManager
Code:

Sep 02 22:41:23 m3800 kernel: [D] add_store  increasing device count to 1
Sep 02 22:41:23 m3800 kernel: [D] evdi_crtc_init drm_crtc_init: 0
Sep 02 22:41:23 m3800 kernel: [D] evdi_encoder_init drm_encoder_init: 0
Sep 02 22:41:23 m3800 kernel: [D] evdi_detect Painter is disconnected
Sep 02 22:41:23 m3800 kernel: evdi evdi.0: No connectors reported connected with modes
Sep 02 22:41:23 m3800 kernel: [drm] Cannot find any crtc or sizes - going 1024x768
Sep 02 22:41:23 m3800 kernel: evdi evdi.0: fb1: evdidrmfb frame buffer device
Sep 02 22:41:23 m3800 kernel: [drm] evdi: evdi_stats_init
Sep 02 22:41:23 m3800 kernel: [drm] Initialized evdi 1.0.68 19700101 on minor 1

Then I started my DisplayManager / X and got this two lines in my log:
Code:

Sep 02 22:41:35 m3800 kernel: [W] evdi_painter_disconnect (dev=0) An unknown connection to ffff880461ca2e00 tries to close us - ignoring
Sep 02 22:41:36 m3800 kernel: [W] evdi_painter_disconnect (dev=0) An unknown connection to ffff88046d2cf800 tries to close us - ignoring

In the directory of the DisplayLinkManager new files have been added:
  • DisplayLinkManager.log
  • DLInstrumentationDirectoryLock
  • FirmwareTrace.log
  • FirmwareTrace.old.log
  • PmMessagesPort_in
  • PmMessagesPort_out

In the top-directory I also got a file that seems to be the EDID of my attached monitor:
  • x64Hanns.G HG281_HSD1CF3-922LB3QA01119.edid
But I do not know at which time this file is created.

So, no further success, the monitor is kept blank.
Could I provide you further log stuff (files, ...)?

maggu2810 09-02-2015 09:09 PM

I would like to use strace to show what is going on.
So I stopped the running DisplayLinkManager while X is still running and started it again using "strace -f ...".
Now I see an additional provider and could use xrandr to activate the monitor output.

So at least it is working, but need to have a further look at the order of the commands.

Log:
Code:

Sep 02 23:05:00 m3800 kernel: [D] add_store  increasing device count to 2
Sep 02 23:05:00 m3800 kernel: [D] evdi_crtc_init drm_crtc_init: 0
Sep 02 23:05:00 m3800 kernel: [D] evdi_encoder_init drm_encoder_init: 0
Sep 02 23:05:00 m3800 kernel: [D] evdi_detect Painter is disconnected
Sep 02 23:05:00 m3800 kernel: evdi evdi.1: No connectors reported connected with modes
Sep 02 23:05:00 m3800 kernel: [drm] Cannot find any crtc or sizes - going 1024x768
Sep 02 23:05:00 m3800 kernel: evdi evdi.1: fb2: evdidrmfb frame buffer device
Sep 02 23:05:00 m3800 kernel: [drm] evdi: evdi_stats_init
Sep 02 23:05:00 m3800 kernel: [drm] Initialized evdi 1.0.68 19700101 on minor 2
Sep 02 23:05:00 m3800 kernel: [W] evdi_painter_disconnect (dev=0) An unknown connection to ffff88042a424400 tries to close us - ignoring
Sep 02 23:05:00 m3800 kernel: [W] evdi_painter_disconnect (dev=0) An unknown connection to ffff88006731ee00 tries to close us - ignoring
Sep 02 23:05:00 m3800 kernel: [D] evdi_detect Painter is disconnected
Sep 02 23:05:00 m3800 kernel: [D] evdi_detect Painter is disconnected
Sep 02 23:05:00 m3800 kernel: [D] evdi_painter_crtc_state_notify (dev=0) Notifying crtc state: 0
Sep 02 23:05:00 m3800 kernel: [D] evdi_painter_crtc_state_notify (dev=0) Notifying crtc state: 0
Sep 02 23:05:10 m3800 kernel: [W] evdi_painter_disconnect (dev=0) An unknown connection to ffff880460654200 tries to close us - ignoring
Sep 02 23:05:10 m3800 kernel: [D] evdi_painter_connect (dev=2) Connected with ffff880415c1ae00
Sep 02 23:05:10 m3800 kernel: [D] evdi_painter_connect (dev=2) Edid (3 bytes): 00 ff ff
Sep 02 23:05:10 m3800 kernel: [D] evdi_detect (dev=2) Painter is connected
Sep 02 23:05:10 m3800 kernel: [D] evdi_detect (dev=2) Painter is connected
Sep 02 23:05:10 m3800 kernel: [D] evdi_painter_get_edid (dev=2) 00 ff ff
Sep 02 23:05:50 m3800 kernel: [D] evdi_detect (dev=2) Painter is connected
Sep 02 23:05:50 m3800 kernel: [D] evdi_painter_get_edid (dev=2) 00 ff ff
Sep 02 23:06:08 m3800 kernel: [D] evdi_detect (dev=2) Painter is connected
Sep 02 23:06:08 m3800 kernel: [D] evdi_painter_get_edid (dev=2) 00 ff ff
Sep 02 23:06:08 m3800 kernel: [D] evdi_painter_mode_changed_notify (dev=2) Notifying mode changed: 1920x1200@60; bpp 32; pixel format 875713112
Sep 02 23:06:08 m3800 kernel: [D] evdi_painter_crtc_state_notify (dev=2) Notifying crtc state: 1
Sep 02 23:06:08 m3800 kernel: [D] evdi_detect (dev=2) Painter is connected
Sep 02 23:06:08 m3800 kernel: [D] evdi_painter_get_edid (dev=2) 00 ff ff


maggu2810 09-02-2015 09:20 PM

I rebooted my machine to find the simple steps:
  • loading evdi kernel module before X has been started
  • start X server (GNOME session at my current setup)
  • start "DisplayLinkManager" (currently using root privileges)

Now xrandr shows the provider (listproviders).

Code:

$ xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x49 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 6 associated providers: 0 name:Intel
Provider 1: id: 0x11c cap: 0x2, Sink Output crtcs: 1 outputs: 1 associated providers: 0 name:modesetting

After that is used
Code:

xrandr --setprovideroutputsource 1 0
and activated the output "DVI-1-0" after all (in the run before it has been named "DVI-1-1").

All fine.

mikopp 09-03-2015 09:07 AM

ok I can confirm that after loading module prior to X and of course installing the modesetting driver ;) it works now.

gaya 10-20-2015 01:55 PM

Just elaborating in case anyone needs easier steps for systemd like me as I didn't know xrandr really well. This post got me on the right track however. I'm happy the displaylink made the effort and released a driver for the D3x because I can't work with Windows efficiently. I tried for 2 months...

If the driver is installed (in my case using a gentoo overlay from maggu2810) you can start the displaylink service with systemctl and add the "evdi" to /etc/modules-load/evdi.conf.

By guessing that you now loaded evdi and started the displaylink service automatically, you may not be able to guess what the display device is called using xrandr. The output and steps for my 3 monitor setup, both connected via HDMI on the D3100 is here:

Code:

% xrandr --listproviders                       
Providers: number : 3
Provider 0: id: 0x94 cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 4 associated providers: 2 name:Intel
Provider 1: id: 0x6c cap: 0x2, Sink Output crtcs: 1 outputs: 1 associated providers: 1 name:modesetting
Provider 2: id: 0x41 cap: 0x2, Sink Output crtcs: 1 outputs: 1 associated providers: 1 name:modesetting

Code:

% xrandr -q           
Screen 0: minimum 8 x 8, current 5760 x 1080, maximum 32767 x 32767
eDP1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 409mm x 230mm
  1920x1080    60.00*+
  1400x1050    59.98 
  1280x1024    60.02 
  1280x960      60.00 
  1024x768      60.00 
  800x600      60.32    56.25 
  640x480      59.94 
DP1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)

Now after setting the provider source:
Code:

xrandr --setprovideroutputsource 1 0
xrandr --setprovideroutputsource 2 0

I can see new devices in xrandr (DVI-2-1 and DVI-1-0):
Code:

% xrandr -q
Screen 0: minimum 8 x 8, current 5760 x 1080, maximum 32767 x 32767
eDP1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 409mm x 230mm
  1920x1080    60.00*+
  1400x1050    59.98 
  1280x1024    60.02 
  1280x960      60.00 
  1024x768      60.00 
  800x600      60.32    56.25 
  640x480      59.94 
DP1 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
DVI-2-1 connected 1920x1080+3840+0 (normal left inverted right x axis y axis) 575mm x 323mm
  1920x1080    60.00*+
  1024x768      75.08    70.07    60.00 
  800x600      75.00    60.32 
  640x480      75.00    60.00 
  720x400      70.08 
DVI-1-0 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 575mm x 323mm
  1920x1080    60.00*+
  1024x768      75.08    70.07    60.00 
  800x600      75.00    60.32 
  640x480      75.00    60.00 
  720x400      70.08 
  1024x768 (0x45) 65.000MHz
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806          clock  60.00Hz
  800x600 (0x47) 40.000MHz
        h: width  800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628          clock  60.32Hz
  1920x1080 (0x42) 148.500MHz
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125          clock  60.00Hz
  1024x768 (0x43) 78.800MHz
        h: width  1024 start 1040 end 1136 total 1312 skew    0 clock  60.06KHz
        v: height  768 start  769 end  772 total  800          clock  75.08Hz
  1024x768 (0x44) 75.000MHz
        h: width  1024 start 1048 end 1184 total 1328 skew    0 clock  56.48KHz
        v: height  768 start  771 end  777 total  806          clock  70.07Hz
  1024x768 (0x45) 65.000MHz
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806          clock  60.00Hz
  800x600 (0x46) 49.500MHz
        h: width  800 start  816 end  896 total 1056 skew    0 clock  46.88KHz
        v: height  600 start  601 end  604 total  625          clock  75.00Hz
  800x600 (0x47) 40.000MHz
        h: width  800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628          clock  60.32Hz
  640x480 (0x48) 31.500MHz
        h: width  640 start  656 end  720 total  840 skew    0 clock  37.50KHz
        v: height  480 start  481 end  484 total  500          clock  75.00Hz
  640x480 (0x49) 25.200MHz
        h: width  640 start  656 end  752 total  800 skew    0 clock  31.50KHz
        v: height  480 start  490 end  492 total  525          clock  60.00Hz
  720x400 (0x4a) 28.320MHz
        h: width  720 start  738 end  846 total  900 skew    0 clock  31.47KHz
        v: height  400 start  412 end  414 total  449          clock  70.08Hz

And finally use those monitors:
Code:

xrandr --output DVI-1-0 --auto --right-of eDP1
xrandr --output DVI-2-1 --auto --left-of eDP1



All times are GMT. The time now is 08:38 PM.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.