接前一篇文章:DRM全解析 —— ADD_FB2(1)
本文参考以下博文:
特此致谢!
本回对于DRM_IOCTL_MODE_ADDFB2的ioctl系统调用进行深入分析。
众所周知,ioctl系统调用会从用户空间进入到内核空间进行相关操作和处理,之后将结果返回用户空间。因此,要以DRM_IOCTL_MODE_ADDFB2为线索(关键字)进入到Linux Kernel源码中,看一下与libdrm中此项对应的DRM的相关代码。
笔者的内核版本为6.1。在内核源码中搜索“DRM_IOCTL_MODE_ADDFB2”,虽然有几处,但是我们想要的是drivers/gpu/drm/drm_ioctl.c中的这一行代码:
DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB2, drm_mode_addfb2_ioctl, 0),
DRM_IOCTL_MODE_ADDFB2是一个宏,其定义不单在libdrm源码中有,在Linux Kernel代码中同样存在,因为libdrm和DRM要上下对应起来。在DRM即