代码拉取完成,页面将自动刷新
同步操作将从 OpenCloudOS/OpenCloudOS-Kernel 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
This file explains what's configs used for this kernel and how to use them.
For this kernel specific config options, they should be enable in tencentconfig
and disabled in notk.config for auto-testing support in our CI system.
There are two config manage systems, they are discribed as below.
*******************************************************************************
The Firs Config Manage System (Similar to kernel original method)
*******************************************************************************
1. How to generate configs
Config is generated by "make base-config delta-config" similarity. Like:
make tencentconfig /* Generate release config */
make tencentconfig debug.config
You could also read dist/configs/configs-generate.sh and use the script
to generate configs.
2. How to edit configs
Config sources are at the directories as below:
arch/x86/configs/
arch/arm64/configs/
kernel/configs/
Base configs is arch/$arch/configs/tencent.config, you should modify base
configs in most cases. $arch is support x86 and arm64 now.
It doesn't recommend to modify base configs only using vim. It recommend
to using the steps to modify base configs as below:
a, create .config:
make ARCH=$arch tencentconfig
b, modify .config as your expectation:
method1: make ARCH=$arch menuconfig to change the CONFIGs
method2: vim .config , and then make ARCH=$arch olddefconfig
Note: Using method2 need to check whether the CONFIG* which you
want to enable are really enabled, because the depend on
CONFIG* may haven't been eabled.
c, create defconfig:
make ARCH=$arch savedefconfig
d, update tencent.config:
mv defconfig arch/$arch/configs/tencent.config
Other configs (except config.pswitch) are delta configs, which will
overwrite the duplicate name CONFIG_* in base config (tencent.config).
Related Link:
https://iwiki.woa.com/pages/viewpage.action?pageId=4007623631
3. Configs introduction
tencentconfig
TK4 x86 private release version using this config to build kernel image.
TK4 aarch64 release version using this config to build kernel image.
debug.config
The configs with CONFIG_KASAN and other debug configs enabled, used for
debugging problems.
notk.config
The config for TK specific kernel options testing, *ANY TK specific configs*
should be disabled in this config then we could do testing in TKCI.
performance.config
This config is created and maintained by CSIG, used for highest
performing version.
cloud-game.config
This config is created and maintained by kevinclli (视频渲染组), used
for cloud game on arm64.
Cloud-game needing run android container, which using 4k page. So, they
can't using config.default directly.
pswitch.config
The programmble switch team need a different kernel config, which
include much old slow speed bus, which enlarge the kernel size.
BTW,
The default kernel will opensource as OC kernel, some specific feature should
be modulized.
*******************************************************************************
The Second Config Manage System (Similar to RedHat/Fedora's dist manage)
*******************************************************************************
1, How to generate configs
Changing directory (cd) to the top of kernel source dir, running:
make dist-config /* Equal to make dist-config CONFIG="generic-release" */
make dist-config CONFIG="generic-debug"
2, Configs introduction
tree -l dist/configs/, will display the content as below:
dist/configs/
├── 00base
│ ├── defconfig
│ │ ├── aarch64.config
│ │ ├── default.config
│ │ └── x86_64.config
│ └── generic
│ ├── aarch64.config -> ../../../../arch/arm64/configs/tencent.config
│ ├── default.config
│ └── x86_64.config -> ../../../../arch/x86/configs/tencent.config
├── 50variant
│ ├── debug
│ │ └── default.config -> ../../../../kernel/configs/debug.config
│ └── release
│ └── default.config
"make dist-config" is using:
dist/configs/00base/generic/default.config /* Which is empty */
+
dist/configs/00base/generic/$arch.config
+
dist/configs/50variant/release/default.config /* Which is empty */
+
dist/configs/50variant/release/$arch.config /* If have the file */
Becase dist/configs/00base/generic/$arch.config is link to
arch/$arch/configs/tencent.config, so "make dist-config" will generate
the same .config as "make tencentconfig".
"make dist-config CONFIG="generic-debug"" is using:
dist/configs/00base/generic/default.config /* Which is empty */
+
dist/configs/00base/generic/$arch.config
+
dist/configs/50variant/debug/default.config
+
dist/configs/50variant/debug/$arch.config /* If have the file */
Becase dist/configs/00base/generic/$arch.config is link to
arch/$arch/configs/tencent.config, and dist/configs/50variant/debug/default.config
is link to kernel/configs/debug.config.
So "make dist-config CONFIG="generic-debug"" will generate the same
.config as "make tencentconfig debug.config".
Note, When running "make dist-*" command (such as make dist-config), please make
sure all changes have commited to git repo. "make dist-*" command gets codes and
configs from git.
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。