Cannot compile i915 kernel driver as a module on CoreOS
AYAN KUMAR HALDER
ayankumarh at gmail.com
Mon Dec 10 17:38:49 EST 2018
On Mon, Dec 10, 2018 at 4:50 PM Jason Kulatunga <jason at thesparktree.com>
> I'm working on a project to enable the i915 kernel driver in CoreOS so
> that I can do Hardware Transcoding inside containers.
> I want to package this kernel driver as a module, rather than rebuilding
> the whole kernel because CoreOS does automatic kernel updates, which would
> eventually override my changes.
> I've been able to determine the kernel config options necessary to enable
> the i915 driver, specifically I needed to enable:
> - Direct Rendering Manager (XFree86 4.1.0 and higher DRI support)
> - Intel 8xx/9xx/G3x/G4x/HD Graphics
> However after configuring both as modules, and compiling I get the
> following "Unknown Symbol" errors when I attempt to modprobe the .ko
> [ 4411.274987] drm: Unknown symbol hdmi_vendor_infoframe_init (err 0)
> [ 4411.275703] drm: Unknown symbol dma_fence_add_callback (err 0)
> [ 4411.276399] drm: Unknown symbol dma_buf_attach (err 0)
> [ 4411.277241] drm: Unknown symbol dma_fence_default_wait (err 0)
> [ 4411.277955] drm: Unknown symbol dma_buf_export (err 0)
> [ 4411.278617] drm: Unknown symbol dma_buf_map_attachment (err 0)
> [ 4411.279285] drm: Unknown symbol dma_fence_remove_callback (err 0)
> [ 4411.280108] drm: Unknown symbol dma_buf_unmap_attachment (err 0)
> [ 4411.280813] drm: Unknown symbol dma_fence_context_alloc (err 0)
> [ 4411.281467] drm: Unknown symbol dma_fence_signal (err 0)
> [ 4411.282152] drm: Unknown symbol dma_buf_get (err 0)
> [ 4411.282811] drm: Unknown symbol dma_buf_put (err 0)
> [ 4411.283376] drm: Unknown symbol dma_buf_fd (err 0)
> [ 4411.284019] drm: Unknown symbol dma_fence_init (err 0)
> [ 4411.284745] drm: Unknown symbol hdmi_avi_infoframe_init (err 0)
> [ 4411.285634] drm: Unknown symbol dma_fence_enable_sw_signaling (err 0)
> [ 4411.286390] drm: Unknown symbol dma_buf_detach (err 0)
> [ 4411.287144] drm: Unknown symbol dma_fence_release (err 0)
> [ 4411.287922] drm: Unknown symbol sync_file_get_fence (err 0)
> [ 4411.288665] drm: Unknown symbol sync_file_create (err 0)
> From what I've been able to figure out, neither the required HDMI
> (CONFIG_HDMI) or DMA kernel options can be built as modules.
> eg. when I look at the drivers/video Module.symvers file I dont see
> hdmi_vendor_infoframe_init even though the drivers/video/hdmi.c file
> exports it.
> hdmi.c is behind a boolean (not tristate) config option CONFIG_HDMI.a
> Probably, it is worth checking /proc/kallsyms to see if the kernel exports
these symbols or not. I expect that it will not.
Am I SOL? Should I go back to trying to build the whole CoreOS kernel with
> built-ins rather than as kernel modules?
> I'm still really new to all this kernel stuff, I'm hoping theres something
> simple I'm missing
> The first thing that I might check is that if there were some *.ko files
generated which I had missed loading before my intended drivers.
modules.dep might help here.
FYI, the kernel version I'm building is 4.14.81 (specifically
> 4.14.81-coreos from https://github.com/coreos/linux/tree/v4.14.81-coreos
> if that helps). This issue does not seem to be CoreOS specific, other than
> the fact that their base kernel does not include the HDMI or DMA options
> Thanks for all your help!
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Kernelnewbies