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
