Skip to main content

TPF : Support : Maintenance

Skip to: Abstract | Comments | Solution | Migration | Download

APAR NUMBER:  PJ32379                         
PRODUCT:  z/TPF
FUNCTIONAL AREA:  TPF SUPPORT FOR TPFDF
SHIPPED IN PUT:  5
 

ABSTRACT:
Customer application segment names may have conflicts with the
z/TPFDF segment name space when migrating to z/TPF. Also,
z/TPFDF applications that use the ALASC macro and R7 may have
unpredictable results. In addition, global &DXCNAME is not
properly defined.
 
PACKAGE CONTENTS:
Source Segments:
(C) base/cp/cdc1.cpy
(C) base/macro/begin.mac
(C) base/macro/finis.mac
(C) base/macro/tpfglb.mac
 
Object Only Binaries:
None.
 
Configuration Independent Binaries:
None.
 
Support Files:
None.
 
OTHER BINARIES TO BUILD: YES
(C) <sys>/obj/ccdcol.o
(C) <sys>/load/CPS0.so
 
PREREQUISITE APARS IN APPLICATION ORDER:

base/cp/cdc1.cpy
PJ30564(2) PJ30773(2) PJ30901(2) PJ32290(5) 

base/macro/begin.mac
PJ30469(1) PJ30993(2) PJ32132(4) PJ32362(5) PJ32522(5)
PJ33051(5) PJ33148(5) 

base/macro/finis.mac
PJ30923(2) PJ31137(3) PJ30621(3) PJ31406(3) PJ31725(4)
PJ31515(4) PJ31214(4) PJ32151(4) PJ32362(5) 

base/macro/tpfglb.mac
PJ30688(4) PJ32274(4) PJ32319(5) 

<sys>/obj/ccdcol.o
PJ30457(1) PJ30564(2) PJ30773(2) PJ30901(2) PJ32163(4)
PJ31976(4) PJ32290(5) 

<sys>/load/CPS0.so
PJ30299(1) PJ30306(1) PJ30297(1) PJ30316(1) PJ30341(1)
PJ30360(1) PJ30288(1) PJ30318(1) PJ30357(1) PJ30312(1)
PJ30365(1) PJ30374(1) PJ30364(1) PJ30342(1) PJ30332(1)
PJ30339(1) PJ30398(1) PJ30286(1) PJ30422(1) PJ30391(1)
PJ30409(1) PJ30389(1) PJ30457(1) PJ30429(1) PJ30458(1)
PJ30481(1) PJ30442(1) PJ30416(1) PJ30428(1) PJ30487(1)
PJ30313(1) PJ30528(1) PJ30402(1) PJ30479(1) PJ30327(1)
PJ30423(1) PJ30523(1) PJ30500(1) PJ30517(1) PJ30400(1)
PJ30547(1) PJ30571(2) PJ30414(2) PJ30542(2) PJ30424(2)
PJ30603(2) PJ30614(2) PJ30619(2) PJ30613(2) PJ30558(2)
PJ30561(2) PJ30602(2) PJ30667(2) PJ30632(2) PJ30652(2)
PJ30673(2) PJ30324(2) PJ30559(2) PJ30599(2) PJ30564(2)
PJ30686(2) PJ30750(2) PJ30747(2) PJ30721(2) PJ30713(2)
PJ30562(2) PJ30780(2) PJ30760(2) PJ30645(2) PJ30628(2)
PJ30769(2) PJ30774(2) PJ30773(2) PJ30738(2) PJ30726(2)
PJ30723(2) PJ30827(2) PJ30740(2) PJ30804(2) PJ30878(2)
PJ30870(2) PJ30880(2) PJ30871(2) PJ30892(2) PJ30790(2)
PJ30456(2) PJ30900(2) PK12199(2) PJ30886(2) PJ30717(2)
PJ30897(2) PJ30935(2) PJ30916(2) PJ30820(2) PJ30940(2)
PJ30901(2) PJ30941(2) PJ30970(2) PJ30810(2) PJ30969(2)
PJ30894(2) PJ30938(2) PJ30682(2) PJ30732(2) PJ30696(2)
PJ30899(2) PJ31007(2) PJ30889(2) PJ30658(2) PJ30983(2)
PJ30741(2) PJ31026(2) PJ31029(2) PJ30960(2) PJ30992(2)
PJ30748(2) PJ30976(2) PJ31052(2) PJ30809(2) PJ31027(2)
PJ30991(2) PJ31039(2) PJ31082(2) PJ30979(2) PJ30910(2)
PJ30720(2) PJ30885(2) PJ30953(2) PJ30669(3) PJ31125(3)
PJ31119(3) PJ30704(3) PJ31131(3) PJ31084(3) PJ31006(3)
PJ31070(3) PJ31071(3) PJ30925(3) PJ30966(3) PJ31143(3)
PJ31137(3) PJ31093(3) PJ30950(3) PJ30954(3) PJ30739(3)
PJ31145(3) PJ31133(3) PJ31050(3) PJ30674(3) PJ31201(3)
PJ31260(3) PJ31095(3) PJ31267(3) PJ31279(3) PJ31286(3)
PJ31055(3) PJ31294(3) PJ31200(3) PJ30570(3) PJ31127(3)
PJ31281(3) PJ31321(3) PJ30924(3) PJ31326(3) PJ31188(3)
PJ31132(3) PJ31375(3) PJ31330(3) PJ31176(3) PJ31411(3)
PJ31304(3) PJ31266(3) PJ31348(3) PJ31277(3) PJ30903(3)
PJ31270(3) PJ31406(3) PJ31431(3) PJ30948(3) PJ31410(3)
PJ31391(3) PJ31430(3) PJ31437(3) PJ31336(3) PJ31076(3)
PJ31533(3) PJ31451(3) PJ31399(4) PJ31224(4) PJ31594(4)
PJ31576(4) PJ31561(4) PJ31541(4) PJ31645(4) PJ31644(4)
PJ31659(4) PJ31521(4) PJ31256(4) PJ31649(4) PJ31690(4)
PJ31669(4) PJ30812(4) PJ31663(4) PJ31703(4) PJ31717(4)
PJ31745(4) PJ31758(4) PJ31515(4) PJ31198(4) PJ31357(4)
PJ31730(4) PJ31771(4) PJ31753(4) PJ31790(4) PJ31376(4)
PJ31741(4) PJ31568(4) PJ31838(4) PJ31795(4) PJ31834(4)
PJ31854(4) PJ31424(4) PJ31536(4) PJ30688(4) PJ31879(4)
PJ31842(4) PJ31751(4) PJ31892(4) PJ31914(4) PJ31764(4)
PJ31910(4) PJ31450(4) PJ31675(4) PJ31835(4) PJ30555(4)
PJ31807(4) PJ31731(4) PJ31983(4) PJ31809(4) PJ31994(4)
PJ31479(4) PJ31954(4) PJ32008(4) PJ31996(4) PJ32059(4)
PJ32062(4) PJ32011(4) PJ32092(4) PJ31356(4) PJ32049(4)
PJ32056(4) PJ31980(4) PJ31947(4) PJ32000(4) PJ32105(4)
PJ32010(4) PJ32130(4) PJ32088(4) PJ30929(4) PJ31969(4)
PJ31508(4) PJ32167(4) PJ32146(4) PJ32186(4) PJ32046(4)
PJ32173(4) PJ31679(4) PJ32193(4) PJ32017(4) PJ32140(4)
PJ32025(4) PJ32028(4) PJ32013(4) PJ32230(4) PJ32190(4)
PJ32163(4) PJ31976(4) PJ31639(4) PJ31955(4) PJ31909(4)
PJ31925(4) PJ32014(4) PJ31970(4) PJ32215(4) PJ31182(4)
PJ31766(5) PJ32297(5) PJ32277(5) PJ32335(5) PJ32281(5)
PJ32243(5) PJ31824(5) PJ32198(5) PJ32290(5) PJ32266(5)
PJ32338(5) PJ31749(5) PJ31080(5) PJ32362(5) PJ32330(5)
PJ32247(5) PJ32194(5) PJ32447(5) PJ32336(5) PJ32302(5)
PJ32005(5) PJ32345(5) PJ32332(5) PJ32631(5) PJ32318(5)
PJ32376(5) PJ32833(5) PJ32162(5) PJ32894(5) PJ32697(5)
PJ32414(5) PJ32222(5) PJ33007(5) PJ32989(5) PJ33189(5)
PJ33198(5) PJ31995(5) PJ33101(5) 

 

COMMENTS:
The following z/TPFDF segment name space problem has been
identified:

- In the Programming Standards Manual, IBM has reserved the U*
segment names for the TPF, z/TPF, TPFDF 1.1.3 and z/TPFDF
products. In z/TPFDF, all applications starting with UA, UB, UD
and UG could be considered z/TPFDF central database routines,
possibly affecting macro expansions. While these segment names
have been reserved for IBM use, there could be customer
applications using these segment names. The solution to z/TPFDF
APAR PK61153 reduces the name space used by z/TPFDF thus
minimizing the chances of a segment name conflict. A z/TPF APAR
is required to support PK61153.

These other problems with z/TPFDF segment names have been
identified:

- z/TPFDF no longer uses the TPFDF 1.1.3 fast-link mechanism to
call z/TPFDF central database routines. Instead z/TPFDF uses
the z/TPF enter-back mechanism to call the central database
routines. This allows z/TPFDF to take advantage of the standard
z/TPF enter-back mechanism. z/TPF's standard enter-back
processing does not preserve R7 if the application has issued
an ALASC. However, R7 is preserved using the fast-link
mechanism. Unfortunately, z/TPFDF applications that have been
migrated from TPFDF 1.1.3 may have been using R7 and are
counting on its contents being preserved across z/TPFDF API
calls. This can cause unpredictable results to occur. 

- Continuous data collection (CDC) does not use the application
name when collecting data in z/TPFDF central database routine
UAKA.

In addition, global symbol &DXCNAME is not defined prior to
setting it. As a result, when it is used, the value is never
set.
 

SOLUTION:
To reduce the name space used by z/TPFDF and to help identify
segment name conflicts the following changes have been made:

- begin.mac has been updated to issue an MNOTE 4 "INCORRECT
SEGMENT NAME - RESERVED FOR IBM" if a customer attempts to
assemble an application using 
 o IBM=NO (the default setting) on the BEGIN macro
 o The segment name or a transfer vector name that begins with
UA or UB and has a numeric last digit
 o Segment or transfer vector UAKA. 

- finis.mac has been updated to not save R8 over z/TPFDF API
calls only for segments that do not have:.
 o The segment name or a transfer vector name that begins with
UA or UB and has a numeric last digit
 o Segment or transfer vector UAKA. 

The other problems have been solved by:

- finis.mac has been updated to preserve R7 (that is, R7 is NOT
set to the address of the auto storage block) across assembler
z/TPFDF API calls even when the application uses the ALASC
macro.

- tpfglob.mac has been updated to define &DXCNAME.
 
COREQS: YES
PK61153
 

MIGRATION CONSIDERATIONS: YES
Application programming interface (API) changes:
Applications that meet the following criteria will need to be 
renamed:
  o The segment name or a transfer vector name begins with UA 
or UB and has a numeric last digit
  o Segment or transfer vector name UAKA. 

Assembler applications that call z/TPFDF APIs will need to be 
reassembled if they:
- Meet both of the following criteria:		
  o The segment does not use R8 as a base program register
  o The segment name is ugX0.asm, where X is any alphanumeric 
character 
- Use the ALASC macro

 


 
BUILD COMMANDS AND INSTRUCTIONS: YES
#maketpf commands for linux
maketpf -f CPS0 ccdcol.o
maketpf CPS0 link
 
UPDATED INFORMATION UNITS: NO
None.
 
See your IBM representative if you need additional information.
 

DOWNLOAD INSTRUCTIONS:
http://www.ibm.com/software/htp/tpf/pages/maint.htm
 
APAR URL:
http://www.ibm.com/software/htp/tpf/ztpfmaint/put5/PJ32379.htm
APAR Package