PowerPath 6.1 在启动时导致 ASMlib 错误

摘要: 在启动过程中,自动存储管理库 (ASMlib) 会报告重复的 sysfs 并kobject_add_internal -EEXIST 堆栈跟踪。Off-by-one issue in PowerPath 6.1 会两次注册同一分区。

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

使用 Oracle ASMlib 启动时,您可能会遇到以下消息。

Scanning the system form Oracle ASMLib disks : kobject_add_internal failed for sdX1 with --EEXIST, don’t try and register things with the same name in the same directory.
sdX: p1 could not be added: 17"
扫描系统错误

在消息中,您会看到类似的堆栈。

Feb 4 14:05:28 linux21758 kernel: -----------[ cut here ]-----------
Feb 4 14:05:28 linux21758 kernel: WARNING: at fs/sysfs/dir.c:512 sysfs_add_one+0xb8/0xd0() (Tainted: P   ------------ )
Feb 4 14:05:28 linux21758 kernel: Hardware name: ProLiant DL385 G1
Feb 4 14:05:28 linux21758 kernel: sysfs: cannot create duplicate filename '/devices/pci0000:04/0000:04:09.0/0000:05:08.0/host2/rport-2:0-1/target2:0:1/2:0:1:5/block/sdv/sdv1'
Feb 4 14:05:28 linux21758 kernel: Modules linked in: oracleasm(U) autofs4 8021q garp stp llc cpufreq_ondemand powernow_k8 freq_table mperf ip6t_REJECT nf_conntrack_ipv6 nf_defrag_ipv6 xt_state nf_conntrack ip6table_filter ip6_tables ipv6 emcpdm(P)(U) emcpgpx(P)(U) emcpmpx(P)(U) emcp(P)(U) vhost_net macvtap macvlan tun uinput microcode tg3 ptp pps_core joydev hpilo hpwdt sg k8temp amd64_edac_mod edac_core edac_mce_amd i2c_amd756 i2c_core amd_rng shpchp ext4 jbd2 mbcache sd_mod crc_t10dif sr_mod cdrom cciss qla2xxx scsi_transport_fc scsi_tgt pata_acpi ata_generic pata_amd dm_mirror dm_region_hash dm_log dm_mod [last unloaded: emcpioc]
Feb 4 14:05:28 linux21758 kernel: Pid: 1867, comm: MpxTestDaemon Tainted: P   ------------ 2.6.32-642.el6.x86_64 #1
Feb 4 14:05:28 linux21758 kernel: Call Trace:
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8107c911>] ? warn_slowpath_common+0x91/0xe0
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8107ca16>] ? warn_slowpath_fmt+0x46/0x60
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81219388>] ? sysfs_add_one+0xb8/0xd0
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81219408>] ? create_dir+0x68/0xb0
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81219489>] ? sysfs_create_dir+0x39/0x50
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129bc39>] ? kobject_add_internal+0xb9/0x260
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81187004>] ? pcpu_alloc_area+0x234/0x350
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129bee8>] ? kobject_add_varg+0x38/0x60
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129bfc4>] ? kobject_add+0x44/0x70
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129ba6a>] ? kobject_get+0x1a/0x30
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8137d699>] ? device_add+0xc9/0x650
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81387112>] ? pm_runtime_init+0xd2/0xe0
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81212f16>] ? add_partition+0x206/0x320
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e31e6>] ? emcpInitPartitions+0xf6/0x100 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e335f>] ? emcpFixupPartitionTables+0x16f/0x180 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa0463612>] ? MpxLnxCleanup+0x232/0x5a0 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa047388e>] ? MpxIodoneUp+0x1fe/0x730 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8106c732>] ? default_wake_function+0x12/0x20
Feb 4 14:05:28 linux21758 kernel: [<ffffffff810a6ad6>] ? autoremove_wake_function+0x16/0x40
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8105ed99>] ? __wake_up_common+0x59/0x90
Feb 4 14:05:28 linux21758 kernel: [<ffffffff810635d3>] ? __wake_up+0x53/0x70
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e0394>] ? PowerPutSema+0x54/0x80 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa048ba28>] ? MpxTestDaemonCalloutGuts+0x258/0x460 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa048bc30>] ? MpxTestDaemonCallout+0x0/0x10 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e45e0>] ? PxDestroyDaemonThreadCallout+0x0/0x70 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa048bc3e>] ? MpxTestDaemonCallout+0xe/0x10 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02ea1a2>] ? PowerServiceDaemonQ+0x62/0xf0 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02ea24e>] ? PowerDaemonStart+0x1e/0x30 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffff810743fa>] ? schedule_tail+0x2a/0xb0
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8100c28a>] ? child_rip+0xa/0x20
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02ea230>] ? PowerDaemonStart+0x0/0x30 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8100c280>] ? child_rip+0x0/0x20
Feb 4 14:05:28 linux21758 kernel: --[ end trace 7738f94320d4cae7 ]--
Feb 4 14:05:28 linux21758 kernel: kobject_add_internal failed for sdv1 with -EEXIST, don't try to register things with the same name in the same directory.
Feb 4 14:05:28 linux21758 kernel: Pid: 1867, comm: MpxTestDaemon Tainted: P W   ------------ 2.6.32-642.el6.x86_64 #1
Feb 4 14:05:28 linux21758 kernel: Call Trace:
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129bcdd>] ? kobject_add_internal+0x15d/0x260
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81187004>] ? pcpu_alloc_area+0x234/0x350
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129bee8>] ? kobject_add_varg+0x38/0x60
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129bfc4>] ? kobject_add+0x44/0x70
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8129ba6a>] ? kobject_get+0x1a/0x30
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8137d699>] ? device_add+0xc9/0x650
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81387112>] ? pm_runtime_init+0xd2/0xe0
Feb 4 14:05:28 linux21758 kernel: [<ffffffff81212f16>] ? add_partition+0x206/0x320
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e31e6>] ? emcpInitPartitions+0xf6/0x100 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e335f>] ? emcpFixupPartitionTables+0x16f/0x180 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa0463612>] ? MpxLnxCleanup+0x232/0x5a0 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa047388e>] ? MpxIodoneUp+0x1fe/0x730 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8106c732>] ? default_wake_function+0x12/0x20
Feb 4 14:05:28 linux21758 kernel: [<ffffffff810a6ad6>] ? autoremove_wake_function+0x16/0x40
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8105ed99>] ? __wake_up_common+0x59/0x90
Feb 4 14:05:28 linux21758 kernel: [<ffffffff810635d3>] ? __wake_up+0x53/0x70
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e0394>] ? PowerPutSema+0x54/0x80 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa048ba28>] ? MpxTestDaemonCalloutGuts+0x258/0x460 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa048bc30>] ? MpxTestDaemonCallout+0x0/0x10 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02e45e0>] ? PxDestroyDaemonThreadCallout+0x0/0x70 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa048bc3e>] ? MpxTestDaemonCallout+0xe/0x10 [emcpmpx]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02ea1a2>] ? PowerServiceDaemonQ+0x62/0xf0 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02ea24e>] ? PowerDaemonStart+0x1e/0x30 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffff810743fa>] ? schedule_tail+0x2a/0xb0
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8100c28a>] ? child_rip+0xa/0x20
Feb 4 14:05:28 linux21758 kernel: [<ffffffffa02ea230>] ? PowerDaemonStart+0x0/0x30 [emcp]
Feb 4 14:05:28 linux21758 kernel: [<ffffffff8100c280>] ? child_rip+0x0/0x20
Feb 4 14:05:28 linux21758 kernel: emcpowerf: emcpowerf1

 

原因

PowerPath 代码中存在一个偏离一个错误,它尝试使用不同的线程添加分区两次。

在这种情况下,应该不会影响主机,但会显示堆栈和消息。

 

解决方案

该修复将包含在 PowerPath 6.2 GA 版本中。

 

文章属性
文章编号: 000167442
文章类型: Solution
上次修改时间: 04 5月 2026
版本:  5
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。