Fixes are available
APAR status
Closed as program error.
Error description
The amqmtmgc module makes a call to the Microsoft Windows COM method CoGetObjectContext() without first making a call to CoInitializeEx(). Whilst this is not usually a problem, if another thread successfully initializes the COM before the amqmtmgc calls CoGetObjectContext(), a timing window in the COM code can result in a memory access violation. The call stack at crash time is: ole32!OXIDEntry::InitRundown ole32!CComApartment::InitRemoting ole32!CComApartment::StartServer ole32!InitChannelIfNecessary ole32!CoGetObjectContext amqmtmgc!<Unknown Function> QFA_2_1_2!QFA::MqChannel::getImqChannel QFA_2_1_2!QFA::MqQueueManager::open QFA_2_1_2!Qfa2UfoMqDevice::initialize QFA_2_1_2!Qfa2UfoMqDevice::onStart QFA_2_1_2!Qfa2UfoMqDevice::startThread MSVCR100D!_callthreadstartex MSVCR100D!_threadstartex kernel32!BaseThreadInitThunk ntdll!__RtlUserThreadStart ntdll!_RtlUserThreadStart
Local fix
A possible workaround could be to call CoInitializeEx on their thread before calling MQCONNX. This should prevent the access violation.
Problem summary
**************************************************************** USERS AFFECTED: All users of WebSphere MQ 7.0, 7.1, and 7.5. Platforms affected: Windows **************************************************************** PROBLEM SUMMARY: The access violation reported occurred because the MQ code made a call to CoGetObjectContext() without first making a call to the COM library CoIntializeEx() method, which the Microsoft COM documentation states is a requirement. Without calling CoInitalizeEx() a race condition can occur with another thread which may result in an access violation ending the process.
Problem conclusion
The code has been altered to ensure that CoInitializeEx() is always called before an attempt is made to call CoGetObjectContext(), thereby avoiding the race condition which can cause an access violation. --------------------------------------------------------------- The fix is targeted for delivery in the following: v7.0 Platform Fix Pack 7.0.1.11 -------- -------------------- Windows 7.0.1.11 v7.1 Platform Fix Pack 7.1.0.4 -------- -------------------- Windows 7.1.0.4 Version v7.5 -------- -------------------- Fix available in: 7.5.0.3 The latest available maintenance can be obtained from 'WebSphere MQ Recommended Fixes' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037 If the maintenance level is not yet available information on its planned availability can be found in 'WebSphere MQ Planned Maintenance Release Dates' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309 ---------------------------------------------------------------
Temporary fix
Comments
APAR Information
APAR number
IC92207
Reported component name
WMQ WINDOWS V7
Reported component ID
5724H7220
Reported release
701
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-05-10
Closed date
2013-06-11
Last modified date
2013-06-11
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
WMQ WINDOWS V7
Fixed component ID
5724H7220
Applicable component levels
R701 PSY
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSDEZSF","label":"IBM WebSphere MQ Managed File Transfer for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0.1","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
31 March 2023