VxVM vxconfigd ERROR V-5-1-0 Segmentation violation - core dumped
Product defect:
* 3965928 (3965715) vxconfigd may core dump when VIOM(Veritas InfoScale Operation Manager) is enabled.
ONE_LINE_ABSTRACT:
vxconfigd may core dump when VIOM(Veritas InfoScale Operation Manager) is enabled.
SYMPTOM:
vxconfigd may core dump when VIOM(Veritas InfoScale Operation Manager) is enabled.
Following is stack trace:
#0 0x00007ffff7309d22 in ____strtoll_l_internal () from /lib64/libc.so.6
#1 0x000000000059c61f in ddl_set_vom_discovered_attr ()
#2 0x00000000005a4230 in ddl_find_devices_in_system ()
#3 0x0000000000535231 in find_devices_in_system ()
#4 0x0000000000535530 in mode_set ()
#5 0x0000000000477a73 in setup_mode ()
#6 0x0000000000479485 in main ()
DESCRIPTION:
vxconfigd daemon reads Json data generated by VIOM for dynamically updating some of the VxVM disk(LUN) attributes.
While accessing this data it wrongly parsed LUN size attribute as string which returns NULL instead of returning LUN size.
Accessing this NULL value leads to vxconfigd daemon to core dump and generates segmentation fault.
RESOLUTION:
Appropriate changes are done to handle the LUN size attribute correctly.
Please contact Veritas Technical Support to obtain Veritas Volume Manager (VxVM) Private hot-fix 7.4.0.1203 for Linux.
To provide potential root cause, run the /opt/VRTSspt/vxgetcore script. Once complete provide the related binary (vxconfigd) and core file to support.
# cd /opt/VRTSspt/vxgetcore
# ./vxgetcore
Note:
./vxgetcore will attempt to find the correct core
and/or binary file, but we can not guarantee that it will succeed in
collecting the right combination of files. If you know their exact locations
then you may quit now and re-run this utility as follows:
# ./vxgetcore -c /path/to/corefile -b /path/to/binary
In this instance, also provide the /etc/vom/sys/arrayinfo.json file to Veritas support.
Sample output:
# vxconfigd -k
11/30 09:39:11: VxVM vxconfigd ERROR V-5-1-0 Segmentation violation - core dumped
In this instance, the core file is named core.8843.
# gdb ./vxconfigd ./core.8843
.
.
(gdb) bt
#0 0x00007ffff7309d22 in ____strtoll_l_internal () from /lib64/libc.so.6
#1 0x000000000059c61f in ddl_set_vom_discovered_attr ()
#2 0x00000000005a4230 in ddl_find_devices_in_system ()
#3 0x0000000000535231 in find_devices_in_system ()
#4 0x0000000000535530 in mode_set ()
#5 0x0000000000477a73 in setup_mode ()
#6 0x0000000000479485 in main ()
(gdb)
Download and install Private hot-fix 7.4.0.1203
# rpm -Uhv VRTSvxvm-7.4.0.1203-RHEL6.x86_64.rpm
Preparing... ########################################### [100%]
VxVM vxdmpadm ERROR V-5-1-684 IPC failure: Configuration daemon is not accessible
stopping vxnotify
1:VRTSvxvm ########################################### [100%]
Installing file /etc/init.d/vxvm-encrypt
Installing file /etc/init.d/vxvm-vxcloud
Installing file /etc/init.d/vxvm-boot
creating VxVM device nodes under /dev
Installing keys for APMs
# vxinstall
.
.
The installation is successfully completed.
# vxdctl mode
mode: enabled
# vxdisk scandisks
# rpm -qa VRTSvxvm
VRTSvxvm-7.4.0.1203-RHEL6.x86_64
Once the Private hot-fix has been applied, vxconfigd can then be restarted.
A valid Veritas product license file is needed, because without that, the Veritas product installer will not be able to proceed.