402 Star 1.4K Fork 1.3K

GVPopenEuler / kernel

 / 详情

内核驱动config打开以及驱动划分

进行中
任务 成员
创建于  
2023-08-23 16:44

https://gitee.com/openeuler/TC/blob/master/oEEP/oEEP-0006%20openEuler%E5%86%85%E6%A0%B8kconfig%E7%BF%BB%E6%96%B0%E5%8F%8A%E5%86%85%E6%A0%B8%E5%8C%85%E6%8B%86%E5%88%86.md
根据与fedora、openSUSE、debian的对比,目前以下模块的驱动数量差距较大,需要评审新增哪些模块的驱动,并对所有驱动进行划分放到min/base/extras:
drivers/ata
drivers/gpu
drivers/hid
drivers/hwmon
drivers/i2c
drivers/iio
drivers/input
drivers/leds
drivers/md
drivers/media
drivers/mfd
drivers/misc
drivers/net
drivers/scsi
drivers/spi
drivers/usb
net/ipv4
net/ipv6
net/netfilter
net/sched
sound/pci
sount/soc
sound/usb

附件
config.csv(2.94 KB)下载
SuperSix173 2023-08-23 16:44
驱动.emmx(25.51 KB)下载
SuperSix173 2023-08-23 16:44

评论 (8)

SuperSix173 创建了任务

Hi SuperSix173, welcome to the openEuler Community.
I'm the Bot here serving you. You can find the instructions on how to interact with me at Here.
If you have any questions, please contact the SIG: Kernel, and any of the maintainers.

openeuler-ci-bot 添加了
 
sig/Kernel
标签

我的建议:

以下放入min:
net/ipv4
net/ipv6
net/netfilter
net/sched

以下如果是之前已经打开的,放在base,新开的放extras
drivers/ata
drivers/gpu
drivers/hid
drivers/input
drivers/md
drivers/net
drivers/scsi
drivers/usb

以下的可以仔细review下,尽量放extras:
drivers/hwmon
drivers/i2c
drivers/iio
drivers/leds
drivers/media
drivers/mfd
drivers/misc
drivers/spi
sound/pci
sount/soc
sound/usb

按照2023/9/6日TC会议上讨论的关于内核包拆分的结论,现向各位OSV的代表收集各厂家商业版本的内核拆分的现状,包括:

  1. 是否拆分了内核
  2. 如果拆了,拆成了哪几个包
  3. 每个包的作用、内容是什么

根据各OSV的商业版本的情况,看是否有可能在社区版的拆包方案上统一或参考。请OSV代表在本issue回复。

Edited on 2023/9/20:
根据以下厂商的反馈,总结如下:

  • 当前未拆分内核包:超聚变,麒麟信安,润和
  • 当前已拆分内核包:统信UOS,麒麟服务器版。拆分方案都基本与CentOS/RH基本一致,采用kernel-core,-modules,-modules-extra这样的方案。

当前备选拆包命名方案:

  1. kernel-min,-base,-extras
  2. kernel-min,-modules-base,-modules-extras
  3. kernel(不拆为-min和-base),kernel-extras。胡峰提出,以减少对kernel包的改变,减少用户沟通成本
  4. kernel-base(=方案1-min),kernel(=方案1-base),kernel-extras。卞乃猛提出,主(默认)kernel包名不变,提升兼容性,小内核包命名为-base而不是-min,避免产生误解(例如任慰提出-min与从嵌入式角度理解的minimal内核其实并不是一回事)。
  5. kernel-core,-modules,-modules-extras。统信、麒麟当前采用方案,对OSV更友好。
  6. kernel-min(面向虚拟化云原生场景的最小包),-core(对标CentOS kernel-core),-modules,-modules-extras。任慰提出,胡欣蔚倾向于该方案。

反馈超聚变FusionOS情况:目前内核没有拆包。

统信uos内核子包拆分与centos基本一致,拆分的子包包括kernel、kernel-core、kernel-devel、kernel-headers、kernel-modules、kernel-modules-extra、kernel-modules-internal和kernel-tools等其它一些工具相关的包;
其中与模块相关的子包有kernel-core、kernel-modules、kernel-modules-extra、kernel-modules-internal,各子包包含的模块目录如下:

kernel-core kernel-modules kernel-modules-extra kernel-modules-internal
drivers/acpi drivers/ata drivers/base drivers/bcma drivers/block drivers/bluetooth drivers/bus drivers/cdrom drivers/char drivers/cpufreq drivers/crypto drivers/dax drivers/dca drivers/dma drivers/edac drivers/firewire drivers/firmware drivers/gpio drivers/gpu drivers/hid drivers/hv drivers/hwmon drivers/hwtracing drivers/i2c drivers/iio drivers/infiniband drivers/input drivers/iommu drivers/isdn drivers/leds drivers/md drivers/media drivers/memstick drivers/message drivers/mfd drivers/misc drivers/mmc drivers/mtd drivers/net drivers/ntb drivers/nvdimm drivers/nvme drivers/parport drivers/pci drivers/pcmcia drivers/pinctrl drivers/platform drivers/power drivers/powercap drivers/pps drivers/ptp drivers/pwm drivers/rtc drivers/scsi drivers/soc drivers/soundwire drivers/spi drivers/target drivers/tee drivers/thermal drivers/tty drivers/uio drivers/usb drivers/vdpa drivers/vfio drivers/vhost drivers/video drivers/virtio drivers/watchdog drivers/xen fs/cachefiles fs/ceph fs/cifs fs/cramfs fs/dlm fs/erofs fs/eulerfs fs/exfat fs/fat fs/fscache fs/fuse fs/gfs2 fs/isofs fs/lockd fs/nfs fs/nfs_common fs/nfsd fs/nls fs/ntfs fs/ntfs3 fs/overlayfs fs/proc fs/pstore fs/squashfs fs/udf fs/xfs net/6lowpan net/802 net/8021q net/atm net/bluetooth net/bridge net/can net/ceph net/core net/dns_resolver net/hookers net/ieee802154 net/ipv4 net/ipv6 net/key net/l2tp net/llc net/mac80211 net/mac802154 net/mpls net/mptcp net/netfilter net/netlink net/openvswitch net/packet net/psample net/qrtr net/rfkill net/sched net/sctp net/smc net/sunrpc net/tipc net/tls net/unix net/vmw_vsock net/wireless net/xdp net/xfrm sound/core sound/drivers sound/hda sound/i2c sound/pci sound/soc sound/synth sound/usb sound/x86 sound/xen virt/lib drivers/bcma drivers/bluetooth drivers/crypto drivers/firewire drivers/firmware drivers/gpu drivers/hid drivers/iio drivers/infiniband drivers/input drivers/isdn drivers/media drivers/memstick drivers/mfd drivers/misc drivers/mmc drivers/mtd drivers/net drivers/ntb drivers/nvme drivers/parport drivers/pcmcia drivers/platform drivers/power drivers/scsi drivers/target drivers/tty drivers/uio drivers/usb fs/cramfs fs/squashfs net/6lowpan net/atm net/bluetooth net/can net/ieee802154 net/l2tp net/mac80211 net/mac802154 net/mpls net/rfkill net/smc net/sunrpc net/wireless sound/core sound/drivers sound/hda sound/i2c sound/pci sound/soc sound/synth sound/usb sound/x86 sound/xen drivers/isdn drivers/net drivers/pci fs/fuse ipv4/atm ipv4/ipv4 ipv4/l2tp ipv4/sched ipv4/sctp internal/drivers/net internal/net

反馈麒麟信安情况:目前内核没有拆包,与openEuler保持一致。

反馈麒麟服务器内核情况如下:

  1. 是否拆分了内核?
    麒麟服务器内核进行了内核子包拆分。拆分策略与CentOS/RedHat基本保持一致。

  2. 如果拆了,拆成了哪几个包?

    主要拆分为如下包:

    • kernel: 包含元数据包。
    • kernel-core: 包含二进制镜像、initramfs、用于保证核心功能的最小数量的内核模块。
    • kernel-modules: 包含剩余的内核模块。
    • kernel-modules-extra: 包含非主流硬件的驱动以及使用较少的网络调度策略和算法模块。
    • kernel-modules-internal: 包含内核内部使用的模块。
    • kernel-tools: 包含用于控制内核的工具和支持文档。
    • kernel-tools-libs:包含tools目录下编译出的库文件。
    • kernel-devel:包含了内核头文件和makefile,用于完整构建模块。
    • kernel-headers: 包含内核与用户空间的接口,以C头文件形式存在。
    • kernel-cross-header: 与kernel-headers类似,用于交叉编译。
    • perf和bpftool等工具包。
  3. 每个包的作用、内容是什么?

    在第2部分已经介绍了作用,下面仅列出与驱动相关的包内容。

    包名 内容
    kernel-core crypto/async_tx drivers/acpi drivers/ata drivers/base drivers/block drivers/cdrom drivers/char drivers/cpufreq drivers/crypto drivers/dax drivers/dca drivers/dma drivers/edac drivers/firmware drivers/gpio drivers/gpu drivers/hid drivers/hv drivers/hwmon drivers/hwtracing drivers/i2c drivers/iio drivers/infiniband drivers/input drivers/iommu drivers/isdn drivers/leds drivers/md drivers/media drivers/memstick drivers/message drivers/misc drivers/mmc drivers/mtd drivers/net drivers/ntb drivers/nvdimm drivers/nvme drivers/parport drivers/pci drivers/pcmcia drivers/pinctrl drivers/platform drivers/power drivers/powercap drivers/pps drivers/ptp drivers/pwm drivers/rtc drivers/scsi drivers/target drivers/thermal drivers/thunderbolt drivers/tty drivers/usb drivers/vfio drivers/vhost drivers/video drivers/virtio drivers/watchdog drivers/xen fs/btrfs fs/cachefiles fs/ceph fs/dlm fs/eulerfs fs/exfat fs/ext4 fs/fat fs/fscache fs/fuse fs/gfs2 fs/isofs fs/jbd2 fs/lockd fs/nfs fs/nfs_common fs/nfsd fs/nls fs/ntfs fs/ntfs3 fs/overlayfs fs/proc fs/pstore fs/udf fs/xfs kernel/trace /lib lib/crypto lib/math lib/raid6 lib/reed_solomon net/802 net/8021q net/bluetooth net/bridge net/ceph net/core net/dns_resolver net/ieee802154 net/ipv4 net/ipv6 net/key net/llc net/netfilter net/netlink net/openvswitch net/packet net/psample net/sched net/sunrpc net/tipc net/tls net/unix net/vmw_vsock net/xfrm sound/core sound/drivers sound/firewire sound/hda sound/i2c sound/pci sound/soc sound/synth sound/usb virt/lib
    kernel-modules drivers/bcma drivers/bluetooth drivers/crypto drivers/firewire drivers/firmware drivers/gpu drivers/hid drivers/iio drivers/infiniband drivers/input drivers/isdn drivers/leds drivers/media drivers/memstick drivers/mfd drivers/mmc drivers/net drivers/ntb drivers/nvme drivers/parport drivers/platform drivers/power drivers/scsi drivers/target drivers/tty drivers/uio drivers/usb fs/cifs fs/cramfs fs/squashfs net/6lowpan net/atm net/bluetooth net/can net/ieee802154 net/mac80211 net/mac802154 net/mpls net/rfkill net/sunrpc net/wireless sound/core sound/drivers sound/firewire sound/hda sound/i2c sound/pci sound/soc sound/synth sound/usb sound/x86 sound/xen
    kernel-modules-extra drivers/isdn drivers/message drivers/net drivers/pci fs/fuse net/atm net/ipv4 net/l2tp net/sched net/sctp
    kernel-modules-internal internal/drivers internal/net

反馈润和软件情况:目前内核没有拆包,与openEuler保持一致。

ci-robot 通过openeuler/kernel Pull Request !1997任务状态待办的 修改为已完成
SuperSix173 任务状态已完成 修改为进行中

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(7)
5329419 openeuler ci bot 1632792936
C
1
https://gitee.com/openeuler/kernel.git
git@gitee.com:openeuler/kernel.git
openeuler
kernel
kernel

搜索帮助