odm-sol10_x64-Patch-6.0.5.400

 Basic information
Release type: Patch
Release date: 2016-03-02
OS update support: None
Technote: None
Documentation: None
Popularity: 736 viewed    downloaded
Download size: 380.43 KB
Checksum: 324114916

 Applies to one or more of the following products:
VirtualStore 6.0.1 On Solaris 10 X64
Storage Foundation 6.0.1 On Solaris 10 X64
Storage Foundation Cluster File System 6.0.1 On Solaris 10 X64
Storage Foundation for Oracle RAC 6.0.1 On Solaris 10 X64
Storage Foundation HA 6.0.1 On Solaris 10 X64

 Obsolete patches, incompatibilities, superseded patches, or other requirements:

This patch supersedes the following patches: Release date
odm-sol10_x64-6.0.5.100 (obsolete) 2014-09-15

This patch requires: Release date
sfha-sol10_x64-6.0.5 2014-04-15

 Fixes the following incidents:
3142142, 3142252, 3149270, 3241794, 3322294, 3515842, 3544831, 3799901

 Patch ID:
149817-04

Readme file
                          * * * READ ME * * *
             * * * Veritas Oracle Disk Manager 6.0.5 * * *
                      * * * Patch 6.0.5.400 * * *
                         Patch Date: 2016-02-24


This document provides the following information:

   * PATCH NAME
   * OPERATING SYSTEMS SUPPORTED BY THE PATCH
   * PACKAGES AFFECTED BY THE PATCH
   * BASE PRODUCT VERSIONS FOR THE PATCH
   * SUMMARY OF INCIDENTS FIXED BY THE PATCH
   * DETAILS OF INCIDENTS FIXED BY THE PATCH
   * INSTALLATION PRE-REQUISITES
   * INSTALLING THE PATCH
   * REMOVING THE PATCH


PATCH NAME
----------
Veritas Oracle Disk Manager 6.0.5 Patch 6.0.5.400


OPERATING SYSTEMS SUPPORTED BY THE PATCH
----------------------------------------
Solaris 10 X64


PACKAGES AFFECTED BY THE PATCH
------------------------------
VRTSodm


BASE PRODUCT VERSIONS FOR THE PATCH
-----------------------------------
   * Symantec VirtualStore 6.0.1
   * Veritas Storage Foundation 6.0.1
   * Veritas Storage Foundation Cluster File System HA 6.0.1
   * Veritas Storage Foundation for Oracle RAC 6.0.1
   * Veritas Storage Foundation HA 6.0.1


SUMMARY OF INCIDENTS FIXED BY THE PATCH
---------------------------------------
Patch ID: 149817-04
* 3799901 (3451730) Installation of VRTSodm, VRTSvxfs in a zone
fails when running zoneadm -z Zone attach -U
Patch ID: 149817-03
* 3515842 (3481825) The system is unable to turn off the vxodm service only for Smart Flash Cache. The system panics
when it attempts to use the ZFS raw.
* 3544831 (3525858) The system panics when the Oracle Disk Manager (ODM)  device (/dev/odm) is mounted in a Solaris Zone.
Patch ID: 149817-02
* 3322294 (3323866) Some ODM operations may fail with "ODM ERROR V-41-4-1-328-22 Invalid argument"
Patch ID: 149817-01
* 3142142 (3079215) Oracle RAC Database creation failed with the Ora-00600
[ksfd_odmio1] error  when Veritas ODM links.
* 3142252 (3142045) With Oracle 12c version, the Veritas Oracle Disk Manager
(ODM) library causes a version mismatch on the RHEL6 platform.
* 3149270 (3149174) Veritas Oracle Disk Manager (ODM) clone shutdown fails with
the ORA-03113: end-of-file on communication channel error.
* 3241794 (3101418) The current time returned by the operating system (Oracle error code ORA-01513)
during Oracle startup is invalid.


DETAILS OF INCIDENTS FIXED BY THE PATCH
---------------------------------------
This patch fixes the following Symantec incidents:

Patch ID: 149817-04

* 3799901 (Tracking ID: 3451730)

SYMPTOM:
Installation of VRTSodm, VRTSvxfs in a zone fails when
running zoneadm -z Zoneattach -U

DESCRIPTION:
When you upgrade a zone using attach U option, the checkinstall
script is executed. There were certain zone-irrelevant commands (which should
not be executed during attach) in the checkinstall script which failed the
installation of VRTSodm, VRTSvxfs.

RESOLUTION:
Code is added in the postinstall script to fix the checkinstall script.

Patch ID: 149817-03

* 3515842 (Tracking ID: 3481825)

SYMPTOM:
The panic stack is like this:
unix:panicsys
unix:vpanic_common
unix:panic
unix:die
unix:trap
unix:ktl0
zfs:dmu_objset_spa
zvol_ioctl
specfs:spec_ioctl
genunix:fop_ioctl
odm:odm_raw_check
odm:odm_identify
odm:odmioctl
genunix:fop_ioctl

DESCRIPTION:
The odm_raw_check()function calls fop_ioctl() without first opening the zvol folder.

RESOLUTION:
Symantec has disabled Oracle Disk Manager (ODM)for Solaris on non-VxVM raw devices.

* 3544831 (Tracking ID: 3525858)

SYMPTOM:
The system panics in the odmmount_getzid() function with the following stack: 

odm:odmmount_getzid ()
odm:odmroot_zone ()
odm:odmroot()
genunix:fsop_root(
genunix:lookuppnvp()
genunix:lookuppnat()
genunix:lookupnameat()
genunix:cstatat_getvp()
genunix:cstatat64_32()
unix:syscall_trap32()

DESCRIPTION:
Whenever /dev/odm is mounted inside a zone, ODM maintains information for that mount in a linked list of elements - each element representing a zone mount. This linked list gets corrupted if zones are unmounted simultaneously, due to a race condition. When such a list is referred to during subsequent zone mounts, it leads to panic.

RESOLUTION:
Symantec has fixed the race condition in odmmount_putentry() called from the  ODM zone umount code paths.

Patch ID: 149817-02

* 3322294 (Tracking ID: 3323866)

SYMPTOM:
Some ODM operations may fail with the following error:
ODM ERROR V-41-4-1-328-22 Invalid argument

DESCRIPTION:
On systems having heavy database activity using ODM some operations may fail an error. This is a corner case and it occurs when a new task enters in ODM. To avoid deadlocks ODM maintains two lists of tasks viz. hold list and deny list. All the active tasks are maintained in the hold list and the task that are being exited from ODM are stored in the deny list. The error is returned when the  ODM PID structure gets re-used for a PID that is still being exited from the ODM and is there in the deny list in that case ODM don't allow the task to enter in the ODM and above error is returned.

RESOLUTION:
The code is modified such as to add an extra check while adding a new task in ODM to avoid returning the error in such scenarios.

Patch ID: 149817-01

* 3142142 (Tracking ID: 3079215)

SYMPTOM:
Oracle RAC Database creation failed with Ora-00600 [ksfd_odmio1] error 
when Veritas ODM linked.

DESCRIPTION:
Earlier ODM interface provides a context pointer which is returned 
to oracle by odm_init()
and then passed back to ODM by oracle with each interface call, here ODM 
interface just keeping
track of whether we are running oracle (>10GR2 or not)
In Oracle 12, introduced/started using multiple contexts from the same process, 
but currently
our implementation of odm library is not set up multithreaded which  doesn't 
hadle this which causing the EBADF(Bad file descriptor).

RESOLUTION:
Introduced new changes to support multiple contexts per process.

* 3142252 (Tracking ID: 3142045)

SYMPTOM:
With Oracle 12c version, Veritas ODM library give version mismatch issue

DESCRIPTION:
Each process/task, calling ODM ioctl, has exit hook which scan VMA of 
process/task for valid libodm library. VMA of process/task contains libodm.so 
text section. Exit hook compares the VMA's libodm library names with hard-coded 
library names such as libodm9.so, libodm10.so etc. Some of the new Oracle 
versions might have conflicting hard-coded names with its predecessor, such as 
12c. And the conflicting names fail the check on the existence of libodm in VMA.

RESOLUTION:
To avoid this issue, library name comparison is now done with valid 'libodm' 
pattern instead of hard-coded library name.

* 3149270 (Tracking ID: 3149174)

SYMPTOM:
ODM clone shutdown is failing with error "ORA-03113: end-of-file on 
communication channel"

DESCRIPTION:
odm_fini() which generally releases the memory allocated for the 
context and any other memory structure that have not yet been freed, can be 
called multiple times.Here odm_fini() being called twice with the same context 
which causes the problem

RESOLUTION:
Before freeing, clear the pid field of the context structure to 
avoid double freeing if odm_fini is called by mistake again with same context

* 3241794 (Tracking ID: 3101418)

SYMPTOM:
The invalid current time is returned by the operating system (Oracle error code 
ORA-01513) during Oracle startup.

DESCRIPTION:
Oracle intercepts calls to the localtime_r() function as it is not asynchronous 
signal safe. They do not support any client library to spawn a thread and call 
the localtime_r() function. The localtime_r() function is called from the 
feature_tracking library as a part of the odm_discover() function in VRTSodm.

RESOLUTION:
The code is modified so that it does not spawn the thread and call the 
localtime_r() function, while feature_tracking.



INSTALLING THE PATCH
--------------------
Run the Installer script to automatically install the patch:
-----------------------------------------------------------
To install the patch perform the following steps on at least one node in the cluster:
1. Copy the patch odm-sol10_x64-Patch-6.0.5.400.tar.gz to /tmp
2. Untar odm-sol10_x64-Patch-6.0.5.400.tar.gz to /tmp/hf
    # mkdir /tmp/hf
    # cd /tmp/hf
    # gunzip /tmp/odm-sol10_x64-Patch-6.0.5.400.tar.gz
    # tar xf /tmp/odm-sol10_x64-Patch-6.0.5.400.tar
3. Install the hotfix
    # pwd 
    /tmp/hf
    # ./installODM605P4 [<host1> <host2>...]

You can also install this patch together with 6.0.1 GA release and 6.0.5 Patch release
    # ./installODM605P4 -base_path [<601 path>] -mr_path [<605 path>] [<host1> <host2>...]
where the -mr_path should point to the 6.0.5 image directory, while -base_path to the 6.0.1 image.

Install the patch manually:
--------------------------
For the Solaris 10 release, refer to the online manual pages for
instructions on using 'patchadd' and 'patchrm' scripts provided with
Solaris.  Any other special or non-generic installation instructions
should be described below as special instructions.  The following
example installs a patch to a standalone machine:
       example# patchadd /var/spool/patch/149817-04


REMOVING THE PATCH
------------------
The following example removes a patch from a standalone system:
       example# patchrm 149817-04
For additional examples please see the appropriate manual pages.


SPECIAL INSTRUCTIONS
--------------------
NONE


OTHERS
------
NONE