#define __IS_LOADER
#include "pci_id_driver_map.h"
+/* For systems like Hurd */
+#ifndef PATH_MAX
+#define PATH_MAX 4096
+#endif
+
static void default_logger(int level, const char *fmt, ...)
{
if (level <= _LOADER_WARNING) {
if (fd != -1)
fcntl(fd, F_SETFD, fcntl(fd, F_GETFD) | FD_CLOEXEC);
}
+ if (fd == -1 && errno == EACCES) {
+ log_(_LOADER_WARNING, "failed to open %s: %s\n",
+ device_name, strerror(errno));
+ }
return fd;
}
#endif
}
+bool
+is_kernel_i915(int fd)
+{
+ char *kernel_driver = loader_get_kernel_driver_name(fd);
+ bool is_i915 = kernel_driver && strcmp(kernel_driver, "i915") == 0;
+
+ free(kernel_driver);
+ return is_i915;
+}
+
#if defined(HAVE_LIBDRM)
int
loader_open_render_node(const char *name)
}
}
- driver = loader_get_kernel_driver_name(fd);
- bool is_amdgpu = driver && strcmp(driver, "amdgpu") == 0;
- free(driver);
-
- if (is_amdgpu)
- driver = strdup("radeonsi");
- else
- driver = NULL;
-
out:
log_(driver ? _LOADER_DEBUG : _LOADER_WARNING,
"pci id for fd %d: %04x:%04x, driver %s\n",