Plex in FreeNAS jail and vaapi Intel hardware acceleration support

Hi @zperetz,

Sorry for unclear explanations. For Freenas 11.2, my workaround beside load drm.ko on loader.conf:

  • Install latest drm-kmod or drm-fbsd11.2-kmod on plex jail. We will get a lot of kernel modules file on /boot/modules related to kms and gpu firmware.
root@plex:~ # pkg info | grep drm
drm-fbsd11.2-kmod-4.11g20181210 DRM modules for the linuxkpi-based KMS components
drm-kmod-g20181126             Metaport of DRM modules for the linuxkpi-based KMS components
libdrm-2.4.96,1                Userspace interface to kernel Direct Rendering Module services

Files list:

-r-xr-xr-x  1 root  wheel     8216 Feb  8 11:05 debugfs.ko
-r-xr-xr-x  1 root  wheel   867528 Feb  8 11:05 drm.ko
-r-xr-xr-x  1 root  wheel    12472 Feb  7 19:28 i915_bxt_dmc_ver1_07_bin.ko
-r-xr-xr-x  1 root  wheel   145000 Feb  7 19:28 i915_bxt_guc_ver8_7_bin.ko
-r-xr-xr-x  1 root  wheel   158552 Feb  7 19:28 i915_bxt_huc_ver01_07_bin.ko
-r-xr-xr-x  1 root  wheel    15312 Feb  7 19:28 i915_cnl_dmc_ver1_06_bin.ko
-r-xr-xr-x  1 root  wheel    12888 Feb  7 19:28 i915_glk_dmc_ver1_04_bin.ko
-r-xr-xr-x  1 root  wheel    12704 Feb  7 19:28 i915_kbl_dmc_ver1_01_bin.ko
-r-xr-xr-x  1 root  wheel    12928 Feb  7 19:28 i915_kbl_dmc_ver1_04_bin.ko
-r-xr-xr-x  1 root  wheel   146744 Feb  7 19:28 i915_kbl_guc_ver9_14_bin.ko
-r-xr-xr-x  1 root  wheel   222808 Feb  7 19:28 i915_kbl_huc_ver02_00_bin.ko
-r-xr-xr-x  1 root  wheel    13016 Feb  7 19:28 i915_skl_dmc_ver1_26_bin.ko
-r-xr-xr-x  1 root  wheel    13016 Feb  7 19:28 i915_skl_dmc_ver1_27_bin.ko
-r-xr-xr-x  1 root  wheel   133096 Feb  7 19:28 i915_skl_guc_ver6_1_bin.ko
-r-xr-xr-x  1 root  wheel   145112 Feb  7 19:28 i915_skl_huc_ver01_07_bin.ko
-r-xr-xr-x  1 root  wheel  2092384 Feb  8 11:05 i915kms.ko
-r-xr-xr-x  1 root  wheel   139256 Feb  8 11:05 linuxkpi_gplv2.ko
  • Copy above files to /boot/modules on Freenas host. It will overwrite some files. Maybe you can backup first the original freenas files. For older Intel GPU like mine, actually only need file debugfs.ko, drm.ko, i915kms.ko and linuxkpi-gplv2.ko. The rest files with prefix i915_ for new gpu firmware like broxton, skylake, kabylake and cannonlake.

  • on Freenas host, I also run command kldxref /boot/modules to update linker.hints file.

So, basically the point is replace all of kernel modules related with i915kms on Freenas host with new one.

Thanks