在内核中运行的沙盒程序的 eBPF 已被证明非常有用,除了网络子系统中的原始 BPF 起源之外,对于内核内 JIT 虚拟机的其他安全性、跟踪和其他一般用例也非常实用。Red Hat 已经发布了扩展 eBPF 的初始补丁,以便在输入设备的 HID 子系统中使用它。
Red Hat 精英输入 Linux 团队的 Benjamin Tissoires 发布了一组补丁,引入了对 HID 设备的 eBPF 支持。这种 eBPF 支持可以在 HID 区域中使用的非常有用的区域之一是用于错误/古怪的设备。目前有许多简单的驱动程序和怪癖仅用于纠正输入事件的报告描述符中的键或字节。不幸的是,当前输入驱动程序位于主线内核中的方法以及上游和进入供应商内核所花费的时间对用户来说是痛苦的。这个想法是这些“修复”可以在一些外部存储库中外部化,并将这些修复作为各种 eBPF 程序发布,这些程序将在启动时加载,以避免需要新内核来处理古怪/错误的硬件。
微软——他们的 Surface Dial 和其他独特的输入设备可以通过这个计划中的 eBPF 支持得到更好的支持。
HID 子系统的其他 eBPF 用途包括USI stylus 支持,以使内核 API 由消费者控制,并避免每次发生事件时唤醒用户空间,改进对Microsoft Surface等输入设备的处理拨号,并阻止用户访问特定设备功能,如固件更新入口点。
请参阅初始补丁,以将 BPF 支持添加到 HID 子系统并扩展其中一些可能的 eBPF + HID 用例。
原创文章,作者:校长,如若转载,请注明出处:https://www.yundongfang.com/Yun133477.html