如何使用打开的系统调用和KMS文件描述符枚举可用的KMS模式?

How to enumerate the available KMS modes using the open syscall and KMS file descriptor?

提问人:Momoko 提问时间:6/16/2023 更新时间:6/16/2023 访问量:79

问:

我正在尝试在 Ubuntu 20.04 上安装 vGPU 平台,但主机分辨率似乎已锁定。Xrandr 不起作用并返回“无法获取 gamma 的大小”。 我收到一条指令,上面写着:“如果使用 open syscall 从 KMS 文件描述符读取数据,则可以枚举可用的 KMS 模式。使用它,您可以控制 GPU。drmModeGetResources(drm_fd) 将返回一个结构体,其中包含多个 unint32 项,包括帧缓冲区、crtc、连接器、编码器、分辨率等......”

以下是我的尝试和结果:

尝试 1:我不确定如何“使用打开的系统调用从 KMS 文件描述符读取”。我尝试通过“apt install”安装“drmModeGetResources”,但它返回“无法找到包 drmModeGetResources”。

尝试 2:我尝试使用以下命令“fbset”,该命令成功执行但没有更改分辨率:

sudo fbset - -geometry 1920 1080 1920 1080 32

尝试 3:我在终端中运行了“drmModeGetResources(drm_fd)”并收到此错误:“意外令牌drm_fd附近的语法错误”。

有人可以解释一下这个指令的含义以及如何遵循它吗?

linux-kernel gpu 屏幕解析 drm libvirt

评论

0赞 Momoko 6/20/2023
你好!我想我在这里找到了一些解决方案:github.com/Arc-Compute/IOVInfo

答: 暂无答案