Veritas Volume Manager daemon "vxconfigd" will core dump if the EMC CLARiiON FailoverModes are not consistent across the EMC SP ports.

book

Article ID: 100004457

calendar_today

Updated On:

Description

Error Message

 

VxVM vxconfigd ERROR V-5-1-0 Segmentation violation - core dumped

 

Sample stack trace

 

# pstack core
core 'core' of 56:      vxconfigd -x syslog -m boot
-----------------  lwp# 1 / thread# 1  --------------------
001ae948 ddl_change_path_instr (54b250, 40000025, 34b25c, 34b25c, 57dca8, 54b250) + 12c
0019202c ddl_migration_devlist_found (40000005, 4000, fffffffe, fffffffd, 0, 34b25c) + 6d4
0019158c ddl_check_migration_of_devices (550b68, 54fd28, ffbfeb44, 547c30, 47c00, 0) + b8
00191114 ddl_reconfigure_all (47c00, 36e888, 34b25c, 393004, 0, 3955a0) + 390
0016d8c8 ddl_find_devices_in_system (393018, 0, 5c6698, 0, 36e88c, 34b25c) + 43c
0010b14c find_devices_in_system (2, ffbff8f8, 2ef384, 3b253c, 4, 36e800) + 38
0010a5bc mode_set (2, ffbffb44, 11, 0, 2, 3b2568) + 1a8
0015fc6c req_vold_enable (5e1c08, 3ca248, 0, 38f000, 394400, 38f000) + 120
0013390c request_loop (0, 379590, 5e1c08, a8c0, ffffffff, 1526b) + b38
000ff61c main     (0, 36d000, ffffffff, 3, ffbffe44, 0) + fc0
00041ca8 _start   (0, 0, 0, 0, 0, 0) + 108

Cause

 

Server: systemA 

Once a mismatch of FailoverMode settings has been defined using the required EMC storage related interface, the vxconfigd death should occur as follows:
 

At this time, the vxdmpadm CLI interface is not capable of reporting an ARRAY_TYPE difference, even when there is a array setting discrepancy.

 

# vxdmpadm listenclosure all
ENCLR_NAME        ENCLR_TYPE     ENCLR_SNO      STATUS       ARRAY_TYPE     LUN_COUNT
=======================================================================================
disk              Disk           DISKS                CONNECTED    Disk        1
emc_clariion0     EMC_CLARiiON   CK200053300424       CONNECTED    CLR-A/P     5

 

1.] Refresh VxVM and VxDMP following the array setting


 
# vxdctl enable
VxVM vxdctl ERROR V-5-1-1589 enable failed: Configuration daemon is not accessible
 

# vxdisk list
VxVM vxdisk ERROR V-5-1-684 IPC failure: Configuration daemon is not accessible
 
 
# ls -al core
-rw-------   1 root     root     15316463 Dec 31 13:17 core

# file core
core:           ELF 32-bit MSB core file SPARC Version 1, from 'vxconfigd'
 


# pstack core
core 'core' of 56:      vxconfigd -x syslog -m boot
-----------------  lwp# 1 / thread# 1  --------------------
001ae948 ddl_change_path_instr (54b250, 40000025, 34b25c, 34b25c, 57dca8, 54b250) + 12c
0019202c ddl_migration_devlist_found (40000005, 4000, fffffffe, fffffffd, 0, 34b25c) + 6d4
0019158c ddl_check_migration_of_devices (550b68, 54fd28, ffbfeb44, 547c30, 47c00, 0) + b8
00191114 ddl_reconfigure_all (47c00, 36e888, 34b25c, 393004, 0, 3955a0) + 390
0016d8c8 ddl_find_devices_in_system (393018, 0, 5c6698, 0, 36e88c, 34b25c) + 43c
0010b14c find_devices_in_system (2, ffbff8f8, 2ef384, 3b253c, 4, 36e800) + 38
0010a5bc mode_set (2, ffbffb44, 11, 0, 2, 3b2568) + 1a8
0015fc6c req_vold_enable (5e1c08, 3ca248, 0, 38f000, 394400, 38f000) + 120
0013390c request_loop (0, 379590, 5e1c08, a8c0, ffffffff, 1526b) + b38
000ff61c main     (0, 36d000, ffffffff, 3, ffbffe44, 0) + fc0
00041ca8 _start   (0, 0, 0, 0, 0, 0) + 108
 

2.] Server is rebooted:


# vxdmpadm listenclosure all
ENCLR_NAME        ENCLR_TYPE     ENCLR_SNO      STATUS       ARRAY_TYPE     LUN_COUNT
=======================================================================================
disk              Disk           DISKS                CONNECTED    Disk        1
emc_clariion0     EMC_CLARiiON   CK200053300424       CONNECTED    CLR-A/P     5


 
# vxdctl enable
VxVM vxdctl ERROR V-5-1-1589 enable failed: Configuration daemon is not accessible
 
# vxdisk list
VxVM vxdisk ERROR V-5-1-684 IPC failure: Configuration daemon is not accessible
 
 
# ls -al core
-rw-------   1 root     root     15316463 Dec 31 13:17 core


# file core
core:           ELF 32-bit MSB core file SPARC Version 1, from 'vxconfigd'
 
# pstack core
core 'core' of 56:      vxconfigd -x syslog -m boot
-----------------  lwp# 1 / thread# 1  --------------------
001ae948 ddl_change_path_instr (54b250, 40000025, 34b25c, 34b25c, 57dca8, 54b250) + 12c
0019202c ddl_migration_devlist_found (40000005, 4000, fffffffe, fffffffd, 0, 34b25c) + 6d4
0019158c ddl_check_migration_of_devices (550b68, 54fd28, ffbfeb44, 547c30, 47c00, 0) + b8
00191114 ddl_reconfigure_all (47c00, 36e888, 34b25c, 393004, 0, 3955a0) + 390
0016d8c8 ddl_find_devices_in_system (393018, 0, 5c6698, 0, 36e88c, 34b25c) + 43c
0010b14c find_devices_in_system (2, ffbff8f8, 2ef384, 3b253c, 4, 36e800) + 38
0010a5bc mode_set (2, ffbffb44, 11, 0, 2, 3b2568) + 1a8
0015fc6c req_vold_enable (5e1c08, 3ca248, 0, 38f000, 394400, 38f000) + 120
0013390c request_loop (0, 379590, 5e1c08, a8c0, ffffffff, 1526b) + b38
000ff61c main     (0, 36d000, ffffffff, 3, ffbffe44, 0) + fc0
00041ca8 _start   (0, 0, 0, 0, 0, 0) + 108
 

How to troubleshoot the issue and report the report the enclosure attribute discrepancy


#  vxconfigd -x 9 -x log -x logfile=/var/tmp/vold9.log


# grep -i enclosure vold9.log

12/31 13:56:13:  VxVM vxconfigd DEBUG  V-5-1-14472 Done with enclosure set_property
12/31 13:56:13:  VxVM vxconfigd DEBUG  V-5-1-14471 Done with enclosure set_asso
12/31 13:56:13:  VxVM vxconfigd DEBUG  V-5-1-14121 make_devinfo_list: Adding EMC_CLARiiON (CK200053300424) as first enclosure
12/31 13:56:17:  VxVM vxconfigd DEBUG  V-5-1-14472 Done with enclosure set_property
12/31 13:56:17:  VxVM vxconfigd DEBUG  V-5-1-14471 Done with enclosure set_asso
12/31 13:56:33:  VxVM vxconfigd DEBUG  V-5-1-14472 Done with enclosure set_property
12/31 13:56:33:  VxVM vxconfigd DEBUG  V-5-1-14471 Done with enclosure set_asso
12/31 13:56:33:  VxVM vxconfigd DEBUG  V-5-1-14475 Enclosure is CK200053300424:0:DGC:CLR-A/PF:EMC_CLARiiON:1024
12/31 13:56:34:  VxVM vxconfigd DEBUG  V-5-1-14475 Enclosure is DISKS:0:SEAGATE:Disk:Disk:1026
12/31 13:56:34:  VxVM vxconfigd DEBUG  V-5-1-14475 Enclosure is CK200053300424:0:DGC:CLR-A/P:EMC_CLARiiON:1024
12/31 13:56:35:  VxVM vxconfigd DEBUG  V-5-1-14475 Enclosure is DISKS:3:SEAGATE:Disk:Disk:2
12/31 13:56:35:  VxVM vxconfigd DEBUG  V-5-1-14475 Enclosure is CK200053300424:52:DGC:CLR-A/P:EMC_CLARiiON:0
12/31 13:56:36:  VxVM vxconfigd DEBUG  V-5-1-14475 Enclosure is CK200053300424:52:DGC:CLR-A/PF:EMC_CLARiiON:0

 

Summary:
 


When the DGC (EMC CLARiiON) FailoverMode is set to “1”, the EMC CLARiiON enclosure ARRAY_TYPE will be reported as "CLR-A/PF".
When the DGC (EMC CLARiiON) FailoverMode is set to “2”, the EMC CLARiiON enclosure ARRAY_TYPE will be reported as "CLR-A/P".

As shown above the EMC CLARiiON "ENCLR_SNO" CK200053300424 is shown as CLR-A/PF and CLR-A/P.

 

Active/Passive (A/P)
Array supported in Active/Passive mode
Active/Passive arrays in auto-trespass mode support I/O on a single primary (active) path, while the secondary (passive) path is engaged in the event of primary path failure.


Active/Passive-Failover (A/P-F)
Array supported in Active/Passive-Failover(explicit) mode
Active/Passive-Failover arrays in explicit Failover mode support I/O on a single primary (active) path, while the secondary (passive) path is engaged through the use of an explicit command in the event of primary path failure.

 
 

 

Resolution

 

At this time, Volume Manager release 5.1 SP1 or earlier is not capable of handling different FailoverMode settings.

Therefore, it is essential that the enclosure array settings are validated prior to the presentation of the EMC CLARiiON storage.


Applies To

Solaris 10 running SF 5.1 with EMC CLARiiON storage connected.

A mismatch of FailoverModes are defined across the EMC CLARiiON array.


How to change the Failover Mode setting for a given hbauid | sp | spport using EMC utility "navicli"
 
 
# navicli -h #.#.#.# storagegroup -setpath -gname   -hbauid 10:00:00:01:73:01:BB:EB:20:00:00:01:73:01:BB:EB -sp a -spport 1 -failovermode 1 -type 0x3

 
The recommended configuration is to have all HBAs on one host mapped to the same storage group.
 
Set Path to storage group (y/n)? y
 
Warning: Changing configuration options may cause the array to stop functioning
correctly. Failover-related Initiator settings for a single host MUST BE CONSISTENT
for all paths from the host to the storage system. Please verify after reconnect.
Do you wish to continue  (y/n)? y
 

How to confirm the SP port settings have been modified


# navicli -h #.#.#.#port -list -failovermode -gname | egrep 'Server Name| SP Port ID|Failover'

Server Name:             systemA
    SP Port ID:            0
    Failover mode:         2
    SP Port ID:            0
    Failover mode:         2
    SP Port ID:            1
    Failover mode:         2
    SP Port ID:            1
    Failover mode:         1   <<<<<<<<<<< different failover mode
Server Name:             systemB
    SP Port ID:            0
    Failover mode:         1
    SP Port ID:            0
    Failover mode:         1
    SP Port ID:            1
    Failover mode:         1
    SP Port ID:            1
    Failover mode:         1
 

Issue/Introduction

When the EMC CLARiiON FailoverModes are not consistent across EMC CLARiiON SP ports , vxconfigd has the potential to crash and generate a vxconfigd related core file.