PJ40912: UPDATE LOCKC() CODE TO IMPROVE PERFORMANCE.
Closed as program error.
See Problem Summary.
APAR NUMBER: PJ40912 PRODUCT: z/TPF FUNCTIONAL AREA: INTER-ISTREAM COMMUNICATION SHIPPED IN PUT: 10 ABSTRACT: The C function lockc() needs to be updated to improve performance. PACKAGE CONTENTS: Source Segments: (C) base/rt/clockc.asm Object Only Binaries: None. Configuration Independent Binaries: None. Support Files: None. OTHER BINARIES TO BUILD: YES (C) <sys>/obj/clockc.o (C) <sys>/stdlib/libCTAL.so (C) <sys>/stdload/CTAL.so COMMENTS: The LOCKC macro was updated to have a SYS=YES optional parameter that would use a CLI (compare logical immediate) instruction loop to check for a lock being held rather than a CS (Compare and Swap) instruction loop. This improved locking performance because checking the lock became read of the lockword's storage cache line rather than the repeated write of the line as done by CS. To improve the performance of the C function lockc(), a one-line change can be made in clockc.asm to use LOCKC with the SYS=YES parameter
SOLUTION: The lockc macro call in clockc.asm was updated to use the SYS=YES parameter. COREQS: NO None. MIGRATION CONSIDERATIONS: NO None. BUILD COMMANDS AND INSTRUCTIONS: YES #maketpf commands for linux maketpf -f CTAL clockc.o maketpf CTAL link TPF_VERIFY_LINK_REFS=NO maketpf CTAL link UPDATED INFORMATION UNITS: NO None. See your IBM representative if you need additional information. DOWNLOAD INSTRUCTIONS: http://www.ibm.com/software/htp/tpf/maint/maintztpf.html APAR URL: http://www.ibm.com/software/htp/tpf/ztpfmaint/put10/PJ40912.htm
Reported component name
Reported component ID
NoSpecatt / Xsystem
Last modified date
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fixed component name
Fixed component ID
Applicable component levels