Skip to content

Commit

Permalink
Zowe Suite v1.28.7
Browse files Browse the repository at this point in the history
  • Loading branch information
zowe-robot authored May 29, 2024
2 parents 60762e7 + 910df3b commit e3accb2
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 1 deletion.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Zowe Common C Changelog

## `1.28.0`
- Bugfix: fix an incorrect check in the recovery router code which might lead to
the state cell-pool being released prematurely (#446)

## `1.27.0`

- Enhancement: Allow to specify 31-bit and 64-bit version of dataService library using `libraryName64` and `libraryName31` keys in DataService definition.
Expand Down
6 changes: 5 additions & 1 deletion c/recovery.c
Original file line number Diff line number Diff line change
Expand Up @@ -493,14 +493,16 @@ static void * __ptr32 getRecoveryRouterAddress() {
" LA 1,RCVXINF LOAD ROUTER SERVICE INFO \n"
" BRAS 14,RCVSIFLB RECORD IT, REMOVE CONTEXT, PERCOLATE \n"
" TM RCXFLAG1,R@CF1USP USER STATE POOL? \n"
" BZ RCVFRL04 NO, DO NOT FREE IT \n"
" BNZ RCVFRL04 NO, DO NOT FREE IT \n"
" LT 2,RCXSCPID CELL POOL ZERO? \n"
" BZ RCVFRL04 YES, DO NOT FREE IT \n"
#ifdef _LP64
" SAM31 \n"
" SYSSTATE AMODE64=NO \n"
#endif
" CPOOL DELETE,CPID=(2) FREE THE STATE CELL POOL \n"
" LGFI 2,X'7FFFFBA3' MAKE AN OBVIOUSLY BAD ADDRESS \n"
" ST 2,RCXSCPID MARK THE CPID FOR DEBUGGING PURPOSES \n"
#ifdef _LP64
" SAM64 \n"
" SYSSTATE AMODE64=YES \n"
Expand Down Expand Up @@ -1263,6 +1265,8 @@ RecoveryStatePool *recoveryMakeStatePool(unsigned int stateCount) {

void recoveryRemoveStatePool(RecoveryStatePool *statePool) {
removeRecoveryStatePool(statePool->cellPool);
// put a bad address for debugging (in case the statePool storage survives)
statePool->cellPool = 0x7FFFFBA1;
storageRelease(statePool, sizeof(RecoveryStatePool));
}

Expand Down

0 comments on commit e3accb2

Please sign in to comment.