OK, I have made some progress on this:

The busid reported by libdrm on the arm64 system is "0007:a1:00.0"
The busid reported by libdrm on a amd64 system is "pci:0000:00:02.0"

The "pci:" prefix is missing on arm64. I think this leads to the
segfault on arm64 as X tests for the prefix.

This little C program below extracts the information and demonstrates
the difference.

I will follow up why this is happening.

Regards,
Daniel

#include <xf86drm.h>
#include <unistd.h>
#include "stdio.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

int main() {
        char *path="/dev/dri/card0";
        drmSetVersion sv;
        char *buf;
        int fd;
        int err = 0;

        fd = open(path, O_RDWR, O_CLOEXEC);

        sv.drm_di_major = 1;
        sv.drm_di_minor = 4;
        sv.drm_dd_major = -1;       /* Don't care */
        sv.drm_dd_minor = -1;       /* Don't care */

        err = drmSetInterfaceVersion(fd, &sv);

        buf = drmGetBusid(fd);
        printf("busid: '%s'\n", buf);
        drmFreeBusid(buf);
        close(fd);
        return (err == 0);
}

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to xorg in Ubuntu.
https://bugs.launchpad.net/bugs/1691991

Title:
  Xorg Segmentation fault on Hisilicon D05 board (arm64)

Status in xorg package in Ubuntu:
  New

Bug description:
  ubuntu@ubuntu:~$ sudo /usr/lib/xorg/Xorg 
  [sudo] password for ubuntu: 

  X.Org X Server 1.18.4
  Release Date: 2016-07-19
  X Protocol Version 11, Revision 0
  Build Operating System: Linux 4.4.0-45-generic aarch64 Ubuntu
  Current Operating System: Linux ubuntu 4.10.0-20.22-generic 
#22+pearl.2-Ubuntu SMP Thu Apr 27 20:23:08 UTC 2017 aarch64
  Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.10.0-20.22-generic 
root=UUID=eee681c5-04ce-4cd0-a004-cae6717961ce ro debug 
earlycon=pl011,mmio,0x602B0000 console=tty0
  Build Date: 02 November 2016  10:05:28PM
  xorg-server 2:1.18.4-0ubuntu0.2 (For technical support please see 
http://www.ubuntu.com/support) 
  Current version of pixman: 0.33.6
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
  Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
  (==) Log file: "/var/log/Xorg.0.log", Time: Fri May 19 18:10:13 2017
  (==) Using system config directory "/usr/share/X11/xorg.conf.d"
  pci id for fd 10: 19e5:1711, driver (null)
  EGL_MESA_drm_image required.
  (EE) 
  (EE) Backtrace:
  (EE) 0: /usr/lib/xorg/Xorg (xorg_backtrace+0x58) [0xaaaad7f1cc48]
  (EE) 
  (EE) Segmentation fault at address 0xa0
  (EE) 
  Fatal server error:
  (EE) Caught signal 11 (Segmentation fault). Server aborting
  (EE) 
  (EE) 
  Please consult the The X.Org Foundation support 
         at http://wiki.x.org
   for help. 
  (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional 
information.
  (EE) 
  (EE) Server terminated with error (1). Closing log file.
  Aborted (core dumped)
  ubuntu@ubuntu:~$

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/xorg/+bug/1691991/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to