如何根据Linux Kernel Mailing List打patch

news/2024/11/14 5:46:15/文章来源:https://www.cnblogs.com/happy2024/p/18329792

Linux内核正在不断开发和改进。每天的补丁都会提交到Linux内核邮件列表(LKML)。其中一些补丁被接受并合并到主流Linux内核中,供用户使用,而其他补丁则永远无法使用。

有时从LKML获取补丁是有用的,例如,如果你在内核中开发,或者只是因为你想保持在前沿。另一个原因可能是,您需要向LKML提出但从未合并的补丁。当使用某些硬件进行开发时,可能会出现这种情况,例如,驱动程序可能已经提交,但由于某种原因(例如,代码不符合内核指南等)从未合并,但您可能仍然对这段代码感兴趣。

在这篇文章中,我们将探索如何将LKML中的代码合并到我们的内核中。

1 获取Linux内核源代码

Linux内核的源代码可从https://www.kernel.org它可以用git下载或克隆。可以转到git仓库页面时https://git.kernel.org。
可以使用这个repo的连接进行git clone . 这里我使用 “https” link:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

2 将LKML中的补丁或补丁系列应用于内核

在大多数情况下,我们不会直接收到带有补丁的电子邮件,要么是因为我们没有订阅邮件列表,要么只是因为我们的开发机器上没有安装电子邮件客户端。因此,我们将直接从LKML档案中检索补丁或系列https://lore.kernel.org.

当我们识别出我们感兴趣的补丁或补丁系列时,有几种方法可以在本地应用它们。例如,下面的内核补丁是为了支持可见的用户态PASID和设备绑定而编写的,如下所示

点击mbox.gz,下载到本地

3 打patch
在Linux内核代码的根目录,创建patches文件夹 mkdir patches
进入文件夹,把mbox.gz 解压 gunzip mbox.zip
回到根目录 执行git am -i patches/mbox
可能会提示为空,执行 git am -i --skip
后续会让输入是否全部apply 选择是

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/773540.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Drone实现CI/CD【0到1架构系列】

CI/CD是持续性集交和持续性部署,简单来讲就是自动化构建和自动化部署。目前有很多集成方案,也有很多组装方案,只要能实现自动化构建出制品,再自动部署到生产环境就行。 目前很多源代码都集成了CI/CD功能,drone也是目前比较流行的一个方案,简单易用,高性能。 前提条件 已…

Django项目快速上手:从安装到创建应用

Django项目快速上手:从安装到创建应用 安装Django 首先,确保你已经安装了 Python 和 pip。然后,使用以下命令来安装 Django : pip install django安装成功后,你就可以开始创建Django项目了。 创建Django项目 打开你的终端或命令提示符,然后使用 django-admin 命令来创建一…

Pulsar客户端消费模式揭秘:Go 语言实现 ZeroQueueConsumer

前段时间在 pulsar-client-go 社区里看到这么一个 issue:import "github.com/apache/pulsar-client-go/pulsar"client, err := pulsar.NewClient(pulsar.ClientOptions{URL: "pulsar://localhost:6650", }) if err != nil {log.Fatal(err) } consumer, er…

配置 setting.py

配置 setting.py Django项目的配置主要通过settings.py文件完成。这个文件位于项目的根目录下(与manage.py同级)。为了让你的应用更加本地化,你可能需要修改一些设置,比如语言、时区等。打开settings.py文件,并找到以下设置进行修改: # setting.py# 语言设置(en-us:英文…

关于GPIO输出模式下3种频率的解释

配置GPIO输出模式时,有3种频率可以选择,2MHz、10MHz和50MHz,如下图:这三个频率说的是I/O口驱动电路的响应频率而不是输出信号的频率。芯片的内部做了多个响应频率不同的输出驱动电路,用户可以根据自己的需要选择合适的驱动电路。通过选取不同频率的输出驱动电路达到最佳的…

二手车交易预测模型笔记

一、梯度下降法 梯度下降法就是一种通过求目标函数的导数来寻找目标函数最小化的方法。梯度下降目的是找到目标函数最小化时的取值所对应的自变量的值,目的是为了找自变量X。 梯度:是一个矢量,其方向上的方向导数最大(意味着在这个方向上,函数的值增加最快。从图形上看,就…

Qt+OpenCascade开发笔记(二):windows开发环境搭建(二):Qt引入occ库,搭建基础工程模板Demo和发布Demo

前言Open CASCADE是由Open Cascade SAS公司开发和支持的开源软件开发平台,旨在为特定领域快速开发程序而设计。它是一个面向对象的C++类库,提供了丰富的几何造型、数据交换和可视化等功能,成为许多CAD软件的核心组件。  本篇描述搭建Qt开发occ环境过程。 Demo注意:用的是…

7/26admin投放端代码理解

xorm是一个数据库映射框架

chsap连接Mysql

前置操作 打开MySql服务 添加引用MySql.Data.dll 数据库查询数据 读取一条数据,直接运行就能看到打印台输出。1 using Mysql.Data.MyAqlClient;2 static void Main(string[] args)3 {4 string connStr="Database=test007;Data Source=127.0.0.1;port=3306;User Id=ro…

论文阅读:BERT-Based Chinese Relation Extraction for Public Security

模型框架 包含一个BERT模型层(嵌入+编码+池化->得到句子的特征向量)、一个Dropout层(防止过拟合)。基于BERT的预训练模型 BERT模型是通过注意力机制对训练集进行处理。然后,通过Embedding层和Encoder层加载预训练的词向量。 最后,Pooling 层使用 BERT 模型来训练两个句…