Signed-off-by: Bryce Harrington <bryce at canonical.com> --- hw/xfree86/os-support/linux/lnx_platform.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/hw/xfree86/os-support/linux/lnx_platform.c b/hw/xfree86/os-support/linux/lnx_platform.c index 3ae2db1..c4d128e 100644 --- a/hw/xfree86/os-support/linux/lnx_platform.c +++ b/hw/xfree86/os-support/linux/lnx_platform.c @@ -31,11 +31,16 @@ get_drm_info(struct OdevAttributes *attribs, char *path) if (fd == -1) return FALSE; - 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); + while (1) { + 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); + if (!err) + break; + usleep(1000); + } if (err) { ErrorF("setversion 1.4 failed: %s\n", strerror(-err)); goto out; -- 1.7.9.5