On systems with multiple graphics cards, a unique name for each is not found, therefore the default first device is always returned. The following patch fixes the problem: Index: xc/extras/drm/libdrm/xf86drm.c =================================================================== --- xc/extras/drm/libdrm/xf86drm.c.orig 2006-09-19 07:39:21.044019637 -0700 +++ xc/extras/drm/libdrm/xf86drm.c 2006-09-19 07:39:25.830123221 -0700 @@ -117,6 +117,9 @@ #define DRM_MSG_VERBOSITY 3 +/* declare forward referenced function to avoid pointer truncation */ +char *drmGetBusid(int fd); + /** * Output a message to stderr. *
Trivially correct. Please apply. This belongs to mesa/libdrm.
Could someone with commit rights please apply this to libdrm? I don't have rights in the mesa/ tree, and this patch is trivially correct.
Adding Brian as discussed on XDC. Brian, could you please commit?
This patch doesn't appear to be relevant to current libdrm. There's already a forward-declaration of drmGetBusid in xf8drm.h.
Probably this bugreport is against SLES10 (X.Org 6.9(monolithic)/Mesa 6.4.2 based). But even there I can find a forward declaration. xc/extras/drm/libdrm/xf86drm.h: [...] extern char *drmGetBusid(int fd); Jonathan, could you provide more details, which X.Org/Mesa/libdrm version you're referring to?
I ran diff against the source in xorg-x11-6.9.0-50.35.src.rpm (SLES10).
SLES10 uses Mesa/libdrm and not these xc/extras/drm sources from X.Org tarball. This issue has been fixed in libdrm (comments #4/5).
Mass version move, cvs -> git
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.