You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The function stopScheme uses the function sm_TaskKill(vscheme->admAppPid, SIGTERM). The issue with this is that this doesn't give the scheme's adminep daemon the chance to properly shutdown (such as closing the BpSAP for the admin eid and releasing any buffers it may have allocated).
My suggestion is to instead send a SIGINT to the admAppPid, and then have the adminep daemon responsible for handling the SIGINT. The stopScheme function should then wait until the task no longer exists, or until a set timeout is reached where it can then send the SIGTERM (in case the adminep daemon is stuck).
------ comment --------
Actually, the handleAdminBundles function does correctly handle the SIGTERM signal, ending the BpSAP recvSemaphore. However, handleAdminBundles doesn't close the BpSAP on exit.
The text was updated successfully, but these errors were encountered:
The function stopScheme uses the function sm_TaskKill(vscheme->admAppPid, SIGTERM). The issue with this is that this doesn't give the scheme's adminep daemon the chance to properly shutdown (such as closing the BpSAP for the admin eid and releasing any buffers it may have allocated).
My suggestion is to instead send a SIGINT to the admAppPid, and then have the adminep daemon responsible for handling the SIGINT. The stopScheme function should then wait until the task no longer exists, or until a set timeout is reached where it can then send the SIGTERM (in case the adminep daemon is stuck).
------ comment --------
Actually, the handleAdminBundles function does correctly handle the SIGTERM signal, ending the BpSAP recvSemaphore. However, handleAdminBundles doesn't close the BpSAP on exit.
The text was updated successfully, but these errors were encountered: