如何使用来自 LKML 的补丁构建内核?

Qwe*_*tie 9 fedora patch linux-kernel

我想为 Fedora 编译一个内核,其中包含一些尚未合并的补丁,用于修复我的硬件设备。补丁位于此处

我已阅读有关为 Fedora 编译内核的指南

我不确定的是如何从邮件列表中获取补丁,然后将它们应用到我的 Linux 源代码副本中。显然我可以手动将更改复制并粘贴到代码中,但我认为有比这更好的方法。据我了解,您可以创建一个 git 补丁文件,然后您可以应用该文件。应用电子邮件中包含的此代码的最佳方法是什么?

Ste*_*itt 12

此补丁系列已发送至linux-input,因此可在Patchwork 上找到。要找到它,您需要删除屏幕顶部的“需要操作”过滤器;然后,您将找到补丁的 v2(与您的链接匹配),以及补丁的 v3,即合并的版本。右上角有一个方便的“系列”链接:点击它,保存生成的文件,然后在你的内核树中,

git am /path/to/Logitech-G920-fixes.patch
Run Code Online (Sandbox Code Playgroud)

将为您应用它。

在当前内核树上,您需要先应用此补丁;所以下载并申请

git am /path/to/HID-Fix-assumption-that-devices-have-inputs.patch
git am /path/to/Logitech-G920-fixes.patch
Run Code Online (Sandbox Code Playgroud)

为了弄清楚这一点,我将HID树添加为远程,然后查看日志drivers/hid/hid-logitech-hidpp.c

git remote add hid https://git.kernel.org/pub/scm/linux/kernel/git/hid/hid.git
git fetch hid
git log HEAD..hid/for-next drivers/hid/hid-logitech-hidpp.c
Run Code Online (Sandbox Code Playgroud)

如果你以后要再次使用 Patchwork,值得下载pwclient和配置~/.pwclientrc

[options]
default = linux-input

[linux-input]
url = https://patchwork.kernel.org/xmlrpc/
Run Code Online (Sandbox Code Playgroud)

然后您可以运行pwclient git-am 11173117pwclient git-am 11197515直接应用补丁系列。


小智 5

有一个专门的修补程序 - patch. 它在各种操作系统中广泛可用。在您的存储库中搜索它,它应该在那里。然后咨询您的man patch.