[Share Experiences] 驱动——Linux桌面之殇!
Tofloor
poster avatar
137******41
deepin
2023-03-04 05:31
Author

Linux系统目前作为桌面系统使用时,驱动是个很大的问题,基本没有像windows那样直接一个安装包就搞定的第三方驱动,如果内核集成了驱动就还好,没有就头大了!主要问题包括:

1.驱动集成到内核,双刃剑!当集成的驱动刚好满足你的硬件需要时很好,开机即用,比windows还方便,很好,但是……集成到内核决定了驱动数量必然有限,新内核推出后为了减肥就会删除部分较老硬件的驱动,然后普通用户根本找不到一个简单的入口去安装老一点的驱动。

外设:我刚刚买了1个爱国者的usb3U盘,结果在我的联想K4450上(安装v23),只能接入usb2.0接口,插入3.0接口后直接没响应。还好我玩linux有点年头了,立马下载了稍早的内核5.10,终于能用usb3.0接口了。然而,普通用户没有下载usb3.0驱动的入口,也不会折腾内核!

无线网卡:我有一个早年的tplink的无线网卡,官网根本没有提供linux驱动,无法使用。

2.缺少较为稳定的驱动层。一个大坑就是显卡驱动,v23中集成开源的显卡驱动太次,滑动音量条都有卡顿。想安装nvdia官方驱动,结果一顿禁用nouveau,启用init3下来,内核模块编译报错!一看日志,内核接口都变了,官方驱动调用失败,而最后版本的驱动止步于2019年,只能放弃!

装驱动还要调用内核接口进行编译!接口变化还相对较快!还需要很多命令行操作,普通用户根本玩不转!

上面这几种遭遇,稍懂点的我都要折腾一会儿,普通用户如何能搞定!?

deepin正在做驱动自动查找安装/应用商店等,是个好的开端,但很多固有的问题除非另起炉灶,大刀阔斧改造系统底层架构是无法解决的。

路还很长,希望deepin能够引领linux桌面变革!

Reply Favorite View the author
All Replies
avatar
Ziggy
deepin
2023-03-04 05:48
#1

我觉得大概率是你体验不到位而已

tplink有适配5.4内核的驱动sh

国产usb网卡基本就是rtl套壳,没有intel实际驱动支持

至于闭源驱动,源内的390、470、510一般都够用,自己有额外需求可以直接装cuda连带安装驱动

Reply View the author
avatar
redmibook
deepin
2023-03-04 06:16
#2

硬件这方面,很无解,来吧伙计:

sudo dmesg

看一看你们的「红字」行(一般是驱动问题),复制出来,报一报机型。

Reply View the author
avatar
137******41
deepin
2023-03-04 06:30
#3
Ziggy

我觉得大概率是你体验不到位而已

tplink有适配5.4内核的驱动sh

国产usb网卡基本就是rtl套壳,没有intel实际驱动支持

至于闭源驱动,源内的390、470、510一般都够用,自己有额外需求可以直接装cuda连带安装驱动

5.4内核……所以说嘛,对普通用户不友好,v23就没有5.4内核,装内核已经超出普通用户的平均计算机水平了,编译内核估计直接劝退了,有的问题我并不是说我查阅技术资料后也完全无法解决,毕竟当年研究生毕业论文编过linux内核模块,而是说对于普通用户,学习/操作成本过高了。

Reply View the author
avatar
jiutian123
deepin
2023-03-04 06:36
#4
redmibook

硬件这方面,很无解,来吧伙计:

sudo dmesg

看一看你们的「红字」行(一般是驱动问题),复制出来,报一报机型。

[ 0.109410] RETBleed: WARNING: Spectre v2 mitigation leaves CPU vulnerable to RETBleed attacks, data leaks possible!

[ 0.084899] DMAR: [Firmware Bug]: No firmware reserved region can cover this RMRR [0x0000000060800000-0x0000000068ffffff], contact BIOS vendor for fixes

[ 0.031175] [Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version: 0xb2 (or later)

[ 5.817870] iwlwifi 0000:02:00.0: iwlmvm doesn't allow to disable BT Coex, check bt_coex_active module parameter

[ 5.607726] Error: Driver 'pcspkr' is already registered, aborting...

[ 3.167185] nouveau 0000:01:00.0: bus: MMIO read of 00000000 FAULT at 022554 [ PRIVRING ]

Reply View the author
avatar
jiutian123
deepin
2023-03-04 06:37
#5

Z7-SL7D3tail

Reply View the author
avatar
137******41
deepin
2023-03-04 06:37
#6
redmibook

硬件这方面,很无解,来吧伙计:

sudo dmesg

看一看你们的「红字」行(一般是驱动问题),复制出来,报一报机型。

不用看了,懒得折腾了,基本能用就行。操作系统核心功能是支撑应用,让应用创造使用价值,除了学习目的,花过多精力折腾操作系统有点舍本逐末了。

Reply View the author
avatar
redmibook
deepin
2023-03-04 06:46
#7
137******41

不用看了,懒得折腾了,基本能用就行。操作系统核心功能是支撑应用,让应用创造使用价值,除了学习目的,花过多精力折腾操作系统有点舍本逐末了。

你说得对,哈哈,主要是让大家看看有没有完美硬件。

Reply View the author
avatar
134******67
deepin
2023-03-04 06:51
#8

[ 2550.783780] pcieport 0000:00:02.0: device [8086:2f04] error status/mask=00001000/00002000
[ 2550.783783] pcieport 0000:00:02.0: [12] Timeout
[ 2550.785336] pcieport 0000:00:02.0: AER: Corrected error received: 0000:00:02.0
[ 2550.785342] pcieport 0000:00:02.0: PCIe Bus Error: severity=Corrected, type=Data Link Layer, (Transmitter ID)
[ 2550.785345] pcieport 0000:00:02.0: device [8086:2f04] error status/mask=00001000/00002000
[ 2550.785348] pcieport 0000:00:02.0: [12] Timeout
[ 2550.844362] pcieport 0000:00:02.0: AER: Corrected error received: 0000:00:02.0
[ 2550.844368] pcieport 0000:00:02.0: PCIe Bus Error: severity=Corrected, type=Data Link Layer, (Transmitter ID)
[ 2550.844371] pcieport 0000:00:02.0: device [8086:2f04] error status/mask=00001000/00002000
[ 2550.844375] pcieport 0000:00:02.0: [12] Timeout

我这个是什么报错看不懂

Reply View the author
avatar
方老四
deepin
2023-03-04 17:55
#9

我也赞同把硬件驱动从内核里拉出来,但这改动太大,改完了可能就不叫linux内核了。好像华为就在做这个事,现在是采用的多内核模式,目标是将来采用微内核+外核的模式,外核可以根据运行环境进行定制。但新核要兼容linux的生态可不是件容易的事,这事只有龙芯能搞定,但好像龙芯没有放弃linux内核的计划,并且LoongArch架构已经在许多linux上游开源社区扎下根了。在国内,通讯和物联网领域,华为是老大;计算机领域,龙芯是老大。

Reply View the author
avatar
不知道用啥昵称
deepin
2023-03-04 20:23
#10
方老四

我也赞同把硬件驱动从内核里拉出来,但这改动太大,改完了可能就不叫linux内核了。好像华为就在做这个事,现在是采用的多内核模式,目标是将来采用微内核+外核的模式,外核可以根据运行环境进行定制。但新核要兼容linux的生态可不是件容易的事,这事只有龙芯能搞定,但好像龙芯没有放弃linux内核的计划,并且LoongArch架构已经在许多linux上游开源社区扎下根了。在国内,通讯和物联网领域,华为是老大;计算机领域,龙芯是老大。

龙芯是真不错。一步一个脚印的踏踏实实的。

Reply View the author
avatar
desert
deepin
2023-03-04 20:42
#11

我知道你说的这个问题啊,但是知道了不代表一定要解决!因为解决不了

Reply View the author
avatar
W2J
deepin
2023-03-04 20:46
#12

[ 5.607726] Error: Driver 'pcspkr' is already registered, aborting...

[ 3.167185] nouveau 0000:01:00.0: bus: MMIO read of 00000000 FAULT at 022554 [ PRIVRING ]

=====

上面信息已经说明问题,

pcspkr(pc-speaker)重复注册被取缔,

nouveau(图形驱动)发生FAULT,被摘下总线

Reply View the author
avatar
W2J
deepin
2023-03-04 20:54
#13

pcieport 0000:00:02.0: device [8086:2f04] error status/mask=00001000/00002000
pcieport 0000:00:02.0: [12] Timeout
pcieport 0000:00:02.0: AER: Corrected error received: 0000:00:02.0
pcieport 0000:00:02.0: PCIe Bus Error: severity=Corrected, type=Data Link Layer, (Transmitter ID)

====

翻译成人类语言,Intel公司的2604设备在PCIe总线上,发生需要纠错级别的数据链路层错误

 

 

Reply View the author
avatar
W2J
deepin
2023-03-04 21:04
#14

查了一下,AER是linux 内核的一种PCIe总线高级错误上报(AER)机制。

 

Reply View the author
avatar
W2J
deepin
2023-03-04 21:11
#15

闭源厂家提供的闭源驱动才是linux之殇。

由于硬件更新周期很缓,驱动设计维护人员,为了饭碗,留下bug就是有意无意间的事儿了,

就像病毒和杀毒软件的关系。

Reply View the author
avatar
hqbios
deepin
2023-03-04 23:16
#16

[ 7.375252] Error: Driver 'pcspkr' is already registered, aborting...

[ 39.316518] cgroup: Unknown subsys name 'cpu'

Reply View the author
avatar
‌量子巡游者
Moderator
2023-03-07 04:26
#17

现在不是说用 rust 来写驱动可以解决一些bug嘛!!!

Reply View the author