找回密码
 加入我们
搜索
      
查看: 53276|回复: 168

[存储] 联芸MAP1602主控的可以入了,掉坑里刚爬出来,P7000Z晚班车拿了四块,附内核

  [复制链接]
发表于 2023-6-15 20:53 | 显示全部楼层 |阅读模式
本帖最后由 hawie 于 2023-9-8 07:10 编辑

P7000Z有个坑,两块以上只认一块。PVE环境,N100实测。
经分析发现,是联芸MAP1602主控的共性问题。
给官方linux内核提出了patch,内核6.4版本开始会集成进来。
  1. diff --git a/drivers/nvme/host/pci.c b/drivers/nvme/host/pci.c
  2. --- a/drivers/nvme/host/pci.c
  3. +++ b/drivers/nvme/host/pci.c
  4. @@ -3424,6 +3424,8 @@ static const struct pci_device_id nvme_id_table[] = {
  5.                 .driver_data = NVME_QUIRK_BOGUS_NID, },
  6.         { PCI_DEVICE(0x1e4B, 0x1202),   /* MAXIO MAP1202 */
  7.                 .driver_data = NVME_QUIRK_BOGUS_NID, },
  8. +        { PCI_DEVICE(0x1e4B, 0x1602),   /* MAXIO MAP1602 */
  9. +                .driver_data = NVME_QUIRK_BOGUS_NID, },
  10.         { PCI_DEVICE(0x1cc1, 0x5350),   /* ADATA XPG GAMMIX S50 */
  11.                 .driver_data = NVME_QUIRK_BOGUS_NID, },
  12.         { PCI_DEVICE(0x1dbe, 0x5236),   /* ADATA XPG GAMMIX S70 */
复制代码

PVE 8.0 beta最新,内核是6.2.16-1-pve,所以目前不支持联芸MAP1602主控的多块NVMe同时使用。
现在需要使用的,修改不难,
下载源码,找到代码中drivers/nvme/host/pci.c添加这两行
  1.         { PCI_DEVICE(0x1e4B, 0x1602),   /* MAXIO MAP1602 */
  2.                 .driver_data = NVME_QUIRK_BOGUS_NID, },
复制代码

重新编译安装,就好了。

趁618,P7000Z今天晚班车拿齐了四块。5.31.白天加入购物车4块,到晚8点,发现只许购买2块;后来再入1块;今天发现限购买1块;
……好吧,凑齐了四块,N100、12W整机功耗,7*24h,软路由NAS达成。

+++++++++++++
20230616 分享编译好的内核,直接用就好,基于PVE 8.0beta源码6.2.16-1修改:
链接: https://pan.baidu.com/s/1qdF8AVyjUOX_gL8Fxe9g6A?pwd=CHH1 提取码: CHH1
20230708 分享编译好的内核,直接用就好,基于PVE 8.0正式版源码6.2.16-3修改:
链接: https://pan.baidu.com/s/1juvlOR6uA7G53eiCJTAzGw?pwd=CHH2
20230712 分享编译好的内核,直接用就好,基于PVE 8.0正式版源码6.2.16-4修改:
链接: https://pan.baidu.com/s/1xHShA5LBaVl2uWH4cIUHGg?pwd=CHH3 提取码: CHH3
20230713 分享基于PVE 8.0正式版源码6.2.16-4修改的4TB未验证测试版,按114楼增加了延时属性。
链接: https://pan.baidu.com/s/1Wgbva1awvubtBFdxhx0vaA?pwd=CHH4 提取码: CHH4
20230908 分享基于PVE 8.0正式版源码6.2.16-12修改的4TB未验证测试版,增加延时属性及初始化延迟。
链接: https://pan.baidu.com/s/1D-0qjzBop9d_tOcRu7bs3Q?pwd=CHH5 提取码: CHH5

安装方法:
上传文件至PVE,登录PVE执行:
  1. dpkg -i *.deb
复制代码
重启即可。

评分

参与人数 3邪恶指数 +35 收起 理由
longpowercn + 5 支持一下
醉酒棕熊 + 20
猪圈 + 10 技术贴

查看全部评分

发表于 2023-6-15 20:55 | 显示全部楼层
没看懂。。。。。
 楼主| 发表于 2023-6-15 21:01 | 显示全部楼层

5.31.兴致勃勃跟风买了两块P7000Z,发现死活只认一块。请忽略掉坑出坑的代码怨念。
发表于 2023-6-15 21:50 | 显示全部楼层
今天也只让买两块
发表于 2023-6-15 23:22 来自手机 | 显示全部楼层
n100用的什么转接板可以上四块2280?
发表于 2023-6-15 23:31 | 显示全部楼层
truenas系统中2块正常用
发表于 2023-6-15 23:45 来自手机 | 显示全部楼层
感谢,我是自己用5.15老内核心暂时用一下
发表于 2023-6-15 23:46 来自手机 | 显示全部楼层
不急,等双11应该会有惊喜
发表于 2023-6-15 23:53 | 显示全部楼层
什么N100机器可以放4块M2?
发表于 2023-6-16 08:17 | 显示全部楼层
是有啥ID重复了不能一起用么?
 楼主| 发表于 2023-6-16 08:28 | 显示全部楼层
windie 发表于 2023-6-16 08:17
是有啥ID重复了不能一起用么?

是的,主控自己跟自己重复,所以只认一块,厂家不修改固件就只能内核弥补,相似问题的原始讨论在这里:https://bugzilla.kernel.org/show_bug.cgi?id=216049
 楼主| 发表于 2023-6-16 08:30 | 显示全部楼层
dedededede 发表于 2023-6-15 23:22
n100用的什么转接板可以上四块2280?

只是愿景,还没到手,某厂家发布却迟迟没上市。
发表于 2023-6-16 08:33 | 显示全部楼层
已经买了3块4T了,坐等8T
 楼主| 发表于 2023-6-16 08:34 | 显示全部楼层
mqwxp 发表于 2023-6-15 23:53
什么N100机器可以放4块M2?

做N100的不多,有家有块转接板,将M.2 NVMe *4, 转为4个M.2 NVMe *1。还没拿到,声称618上货。万事具备了。
发表于 2023-6-16 08:37 | 显示全部楼层
不支持联芸MAP1602主控的多块NVMe同时使用

这主控设计的时候没有考虑到这种情况么?如此看来,sr-iov pci passthrough 也是悬了。
 楼主| 发表于 2023-6-16 08:42 | 显示全部楼层
fkpwolf 发表于 2023-6-16 08:37
这主控设计的时候没有考虑到这种情况么?如此看来,sr-iov pci passthrough 也是悬了。 ...

查找到问题点的时侯发现,这主控的前一代(MAXIO MAP1202)也有这毛病,也是靠内核打补丁的,说明厂家要么业务太好没顾得上,要么根本无视不作为。
发表于 2023-6-16 08:47 | 显示全部楼层
本帖最后由 葱花鱼 于 2023-6-16 08:58 编辑

我遇到过类似的问题。
环境是 PVE 7.x + 两块 SK hynix Gold P31 以 ZFS mirror 安装,镜像池应该是成功建立的,但是 EUI64 ID 重复,原因应该是主控太老,后续固件更新也没有预写入先进虚拟化所需要的 EUI64 ID,所以返回相同的默认值 ffffffff... 导致 ID 重复,以及其他潜在的问题。
当然针对这些特性落后的主控,Linux 也给了补丁,但是需要较新内核,详见:https://github.com/torvalds/linu ... ers/nvme/host/pci.c
使用网页搜索功能(NVME_QUIRK_BOGUS_NID)可以发现,部分海力士,美光,所有的群联 E12/E16,联芸 MAP1202/MAP1602 方案等都有这个问题,解决方案其实很简单,PVE 提供了单独的最新内核供下载,执行 'apt update && apt install pve-kernel-6.x' 然后重启即可。
考虑到 ZFS 的池可能缓冲了配置数据,可以先修改 '/etc/default/zfs' 中的 'ZPOOL_IMPORT_PATH' 参数,重启刷新,然后再改回来。
发表于 2023-6-16 08:47 | 显示全部楼层
hawie 发表于 2023-6-16 08:42
查找到问题点的时侯发现,这主控的前一代(MAXIO MAP1202)也有这毛病,也是靠内核打补丁的,说明厂家要 ...

要全面支持nvme协议里面肯定要固件层面不断的调教,这个就要靠软件积累了,一般厂商没人愿意做,跑个分达标就行了。
 楼主| 发表于 2023-6-16 08:48 | 显示全部楼层
sanmu 发表于 2023-6-16 08:33
已经买了3块4T了,坐等8T

壕!昨天下完单发现4T也在某东上货了,因为前面已经败了3块2T,想想还是忍了没退单买4T。组RAID5还是同容量省心。
还是坐等8T,换掉这四块^_^
 楼主| 发表于 2023-6-16 08:54 | 显示全部楼层
葱花鱼 发表于 2023-6-16 08:47
我遇到过类似的问题。
环境是 PVE 7.x + 两块 SK hynix Gold P31 以 ZFS mirror 安装,镜像池应该是成功建 ...

是,是这么回事。pve目前的6.x内核,都还没集成补丁。需要还没发布的6.4版才有,或许会在6.1.x and 6.3.x也改一版,这是给pve反馈此问题提供patch后的官方回复。
 楼主| 发表于 2023-6-16 09:02 | 显示全部楼层
fkpwolf 发表于 2023-6-16 08:47
要全面支持nvme协议里面肯定要固件层面不断的调教,这个就要靠软件积累了,一般厂商没人愿意做,跑个分达 ...

是,开始想偷懒,以为aigo这型号有很多版本固件,总有个合适的,没想到还是源头背锅。国货要想全面胜出洋货,还有不少细节要深入,任重道远。
发表于 2023-6-16 09:21 | 显示全部楼层
是玩NAS之类的才会遇到的问题么?

我第一批,B550 unify 上插了3块,,当普通硬盘使用,替换了原来电脑上的2T机械盘,目前没遇到问题
 楼主| 发表于 2023-6-16 09:43 | 显示全部楼层
小八 发表于 2023-6-16 09:21
是玩NAS之类的才会遇到的问题么?

我第一批,B550 unify 上插了3块,,当普通硬盘使用,替换了原来电脑上 ...

是的,没遇到问题可以无视。
发表于 2023-6-16 10:55 | 显示全部楼层


一样的,win10下可以正常用,但是有磁盘ID重复事件记录
发表于 2023-6-16 11:13 | 显示全部楼层
woodsheep 发表于 2023-6-16 10:55
一样的,win10下可以正常用,但是有磁盘ID重复事件记录

一样,FX900P 2T GM7 2T win10LTSC也是报这个错误
发表于 2023-6-16 11:15 | 显示全部楼层
hawie 发表于 2023-6-16 08:48
壕!昨天下完单发现4T也在某东上货了,因为前面已经败了3块2T,想想还是忍了没退单买4T。组RAID5还是同容 ...

7000Z 4T上架了?没招到啊
 楼主| 发表于 2023-6-16 11:41 | 显示全部楼层
vasomax 发表于 2023-6-16 11:15
7000Z 4T上架了?没招到啊

昨晚看到上货了,标价¥1049。
发表于 2023-6-16 14:00 | 显示全部楼层
论小厂主控的悲哀,,不过今年海量产品铺开了 情况会好转的
WIN用户暂时没这个烦恼。。
发表于 2023-6-16 14:16 | 显示全部楼层
4T的P7000Z吗?没有啊,只有4T的P7000
 楼主| 发表于 2023-6-16 16:49 | 显示全部楼层
elktsp 发表于 2023-6-16 14:16
4T的P7000Z吗?没有啊,只有4T的P7000

说明你成功错过了,我没错过但也没选,结果是一样一样的
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2024-12-22 10:46 , Processed in 0.018166 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表