dri: Fix nvidia driver with shared network

If we have network access, then nvidia talks to the xserver
and for some reason it then also needs /dev/nvidia-modeset.
So, lets add that to the dri device list.
This commit is contained in:
Alexander Larsson committed 2017-02-08 16:43:14 +01:00
1 parent b66f76a405
commit 763a686d87
1 file changed
+16 -14
+16 -14
View File
@@ -2530,23 +2530,25 @@ flatpak_run_add_environment_args (GPtrArray *argv_array,
if (context->devices & FLATPAK_CONTEXT_DEVICE_DRI)
{
g_debug ("Allowing dri access");
if (g_file_test ("/dev/dri", G_FILE_TEST_IS_DIR))
add_args (argv_array, "--dev-bind", "/dev/dri", "/dev/dri", NULL);
if (g_file_test ("/dev/mali", G_FILE_TEST_EXISTS))
int i;
char *dri_devices[] = {
"/dev/dri",
/* mali */
"/dev/mali",
"/dev/umplock",
/* nvidia */
"/dev/nvidiactl",
"/dev/nvidia0",
"/dev/nvidia-modeset",
};
for (i = 0; i < G_N_ELEMENTS(dri_devices); i++)
{
add_args (argv_array,
"--dev-bind", "/dev/mali", "/dev/mali",
"--dev-bind", "/dev/umplock", "/dev/umplock",
NULL);
}
if (g_file_test ("/dev/nvidiactl", G_FILE_TEST_EXISTS))
{
add_args (argv_array,
"--dev-bind", "/dev/nvidiactl", "/dev/nvidiactl",
"--dev-bind", "/dev/nvidia0", "/dev/nvidia0",
NULL);
if (g_file_test (dri_devices[i], G_FILE_TEST_EXISTS))
add_args (argv_array, "--dev-bind", dri_devices[i], dri_devices[i], NULL);
}
}
if (context->devices & FLATPAK_CONTEXT_DEVICE_KVM)
{
g_debug ("Allowing kvm access");