回购包含Stadia实例内核和构建系统

2020-12-19 06:47:56

Stadia内核集成了amdgpu内核模块的外部版本,该模块作为子模块导入了external / amd-cloudgpu中。内置的amdgpu模块未编译。

Stadia使用自定义内核配置。要对其进行修改,请将其作为.config复制到存储库根目录并运行make menuconfig。编辑和测试完成后,将.config复制回kokoro目录,并发送带有更改的mergerequest。

Stadia使用一个生成脚本来调用内核的生成系统并执行其他生成后处理,以生成可引导的VM磁盘映像。该构建在Google Cloud上维护的Docker容器中执行。

在构建之前,请确保已使用git submodule update --init --depth = 1或类似命令更新了子模块。

Stadia引导映像包括一个自定义的initramfs,其中包括一个squashfs文件系统(内核根文件系统或krootfs),其中包括Stadia所需的一组amdgpu固件文件。默认情况下,构建脚本会从linux-firmware下载一组固件文件。要覆盖默认固件捆绑包,请将环境变量AMDGPU_FIRMWARE_URL设置为下载URL,将AMDGPU_FIRMWARE_SHA256设置为包含固件文件的压缩tar归档文件的sha256校验和。使用sudo时,必须将环境变量设置为命令的一部分,否则将对其进行过滤出来。

欢迎以Merge Requests的形式直接对此内核做出贡献。或者,将补丁提交到上游Linux,然后为要合并的补丁打开一个问题。

有一些针对内核开发人员和用户的指南。这些指南可以多种格式呈现,例如HTML和PDF。请先阅读Documentation / admin-guide / README.rst。

为了建立文档,请使用make htmldocs或make pdfdocs。 格式化的文档也可以在以下位置在线阅读: 在Documentation /子目录中有各种文本文件,其中一些使用“ Restructed Text”标记符号。有关每个文件包含的内容的列表,请参见Documentation / 00-INDEX。 请阅读Documentation / process / changes.rst文件,因为它包含构建和运行内核的要求,以及有关升级内核可能导致的问题的信息。