Trimmed strace logs for both cases
Classic:
openat(AT_FDCWD, “/etc/OpenCL/vendors/nvidia.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/intel.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/intel-beignet-x86_64-linux-gnu.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/intel64.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/pocl.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.1”, O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, “/usr/local/lib/libigdrcl.so”, O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, “/usr/lib/x86_64-linux-gnu/beignet//libcl.so”, O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, “/opt/intel/opencl_compilers_and_libraries_18.1.0.013/linux/compiler/lib/intel64_lin/libintelocl.so”, O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, “/usr/local/lib/libpocl.so.2.3.0”, O_RDONLY|O_CLOEXEC) = 4
Strict with opengl plug:
openat(AT_FDCWD, “/etc/OpenCL/vendors/nvidia.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/intel.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/intel-beignet-x86_64-linux-gnu.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/intel64.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/etc/OpenCL/vendors/pocl.icd”, O_RDONLY) = 4
openat(AT_FDCWD, “/var/lib/snapd/lib/gl/libnvidia-opencl.so.1”, O_RDONLY|O_CLOEXEC) = 4
openat(AT_FDCWD, “/usr/local/lib/libigdrcl.so”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, “/usr/lib/x86_64-linux-gnu/beignet//libcl.so”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, “/opt/intel/opencl_compilers_and_libraries_18.1.0.013/linux/compiler/lib/intel64_lin/libintelocl.so”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, “/usr/local/lib/libpocl.so.2.3.0”, O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
While /etc/OpenCL/vendors/ is accessible in both cases, the other 4 platform driver files(apart from nvidia) are not visible in strict case, which is expected due to confinement