PowerFlex SDC 无法装载 scini 设备,并显示错误 “cannot create duplicate filename”

Summary: 将卷映射到 SDC 后,SDC 无法装载 scini 设备,并在 /var/log/messages 中报告错误“cannot create duplicate filename”。当现有映射的 scini 设备包含分区 ID 16、32、48、64 等时,会出现此问题。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

  • 如果 SDC 装载的 scini 设备包含迭代次数为 16(例如 16、32、48、64 等)的分区 ID,则尝试在 SDC 上装载其他映射的 scini 卷可能会失败。

  • 卷从 PowerFlex 映射到 SDC 成功,但在 SDC 中装载卷失败。

  • SDC 的“messages”文件中报告以下错误。

/var/log/messages
Oct 18 11:24:17 client01 kernel: PowerFlex blkDev_Create:968 :Created device scinib (252,16). Capacity 33554432 LB
Oct 18 11:24:17 client01 kernel: sysfs: cannot create duplicate filename '/dev/block/252:16'
Oct 18 11:24:17 client01 kernel: CPU: 0 PID: 17971 Comm: blk_mgr Kdump: loaded Tainted: P        W  OE     -------  ---  5.14.0-390.el9.x86_64 #1
Oct 18 11:24:17 client01 kernel: Hardware name: VMware, Inc. VMware7,1/440BX Desktop Reference Platform, BIOS VMW71.00V.21100432.B64.2301110304 01/11/2023
Oct 18 11:24:17 client01 kernel: Call Trace:
Oct 18 11:24:17 client01 kernel: <TASK>
Oct 18 11:24:17 client01 kernel: dump_stack_lvl+0x34/0x48
Oct 18 11:24:17 client01 kernel: sysfs_warn_dup.cold+0x17/0x24
Oct 18 11:24:17 client01 kernel: sysfs_do_create_link_sd+0xce/0xe0
Oct 18 11:24:17 client01 kernel: device_add+0x3f9/0x670
Oct 18 11:24:17 client01 kernel: device_add_disk+0xdf/0x3a0
Oct 18 11:24:17 client01 kernel: blkDev_Create+0x2ab/0x760 [scini]
Oct 18 11:24:17 client01 kernel: mapVolBlkMgr_Thrd+0x2ea/0x8c0 [scini]
Oct 18 11:24:17 client01 kernel: ? mosTicks_DestroyEnvSpecific+0x10/0x10 [scini]
Oct 18 11:24:17 client01 kernel: mosOsThrd_Entry+0x1f/0x60 [scini]
Oct 18 11:24:17 client01 kernel: kthread+0xe0/0x100
Oct 18 11:24:17 client01 kernel: ? __pfx_kthread+0x10/0x10
Oct 18 11:24:17 client01 kernel: ret_from_fork+0x2c/0x50
Oct 18 11:24:17 client01 kernel: </TASK>
Oct 18 11:24:17 client01 kernel: PowerFlex blkDev_Create:983 :Error: Failed to add disk scinib (252,16). Capacity 33554432 LB

Cause

  • 在 SDC 上,Linux 内核和 scini 驱动程序以 16 次迭代为单位为映射卷提供特定的 MAJ:MIN 设备编号。下面的示例显示了没有分区映射为 252:0、252:16、252:32 的三个 scini 设备
  • 如果 SDC 的卷包含分区 ID 为 16 的单个分区(可能会将 MAJ:MIN 设备信息分配为 252:16、252:32 等),则尝试将更多卷映射到 SDC 可能会失败,因为已存在重复的设备 ID(即使卷可能只有一个分区)

编号冲突示例

  • 三个装载的 scini 卷获得 MAJ:MIN 设备编号 252:0、252:16、252:32
  • 如果 scinia 卷包含的分区 ID 为 16,则将为该分区分配 MAJ:MIN 设备编号 252:16
  • 当 scinib 卷尝试装载到操作系统时,它需要设备 ID 252:16,scinia16 已在使用该 ID
[root@client01 ~]# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
...
scinia      252:0    0   16G  0 disk
scinib      252:16   0  120G  0 disk
scinic      252:32   0   24G  0 disk
[root@client01 ~]# lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
...
scinia      252:0    0   16G  0 disk
├─scinia14  252:14   0   95M  0 part
├─scinia15  252:15   0 95.5M  0 part
└─scinia16  252:16   0 95.4M  0 part
  
NOTE: This example has three partitions, but same would apply if only scinia16 existed
 

Resolution

行为是设计使然。PowerFlex 支持每个卷最多 15 个分区。

在未来的 PowerFlex 版本中,最大分区数将增加到 256,以避免此枚举冲突。

Additional Information

受影响的版本

全部

已修复问题的版本

PowerFlex Core 3.6.5/4.5.4

Affected Products

PowerFlex Software
Article Properties
Article Number: 000258197
Article Type: Solution
Last Modified: 31 May 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.