summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Nelson <sam.nelson@ti.com>2019-10-08 00:50:16 -0400
committerSam Nelson <sam.nelson@ti.com>2019-10-08 15:51:06 -0400
commitac762823ddd75d46ef32bace6d2a66732fb245e5 (patch)
tree446c7f6499f8e36a400e17b51e1cb7e38914b45f
parentec6c673fc95dcc8852889461fb83c2389a76c276 (diff)
downloadipc-ac762823ddd75d46ef32bace6d2a66732fb245e5.tar.gz
nsremote: Add additional check to handle assert disabled
Signed-off-by: Sam Nelson <sam.nelson@ti.com>
-rw-r--r--packages/ti/sdo/ipc/nsremote/NameServerMessageQ.c14
-rw-r--r--packages/ti/sdo/ipc/nsremote/NameServerRemoteNotify.c18
2 files changed, 22 insertions, 10 deletions
diff --git a/packages/ti/sdo/ipc/nsremote/NameServerMessageQ.c b/packages/ti/sdo/ipc/nsremote/NameServerMessageQ.c
index 48a1dd1..1f0b3a6 100644
--- a/packages/ti/sdo/ipc/nsremote/NameServerMessageQ.c
+++ b/packages/ti/sdo/ipc/nsremote/NameServerMessageQ.c
@@ -120,6 +120,7 @@ Void NameServerMessageQ_Instance_finalize(NameServerMessageQ_Object *obj)
Int NameServerMessageQ_Module_startup(Int phase)
{
MessageQ_Params2 messageQParams;
+ MessageQ_QueueId queueId;
/* Ensure MessageQ and SyncSwi Module_startup() have completed */
if ((ti_sdo_ipc_MessageQ_Module_startupDone() == FALSE) ||
@@ -137,11 +138,20 @@ Int NameServerMessageQ_Module_startup(Int phase)
/* assert msgHandle is not null */
Assert_isTrue(NameServerMessageQ_module->msgHandle != NULL,
Ipc_A_nullPointer);
+ /* Additonal check for case with assert disabled */
+ if(NameServerMessageQ_module->msgHandle == NULL) {
+ return Startup_NOTDONE;
+ }
+ queueId = MessageQ_getQueueId((MessageQ_Handle)
+ NameServerMessageQ_module->msgHandle);
/* assert this is the first MessageQ created */
- Assert_isTrue((MessageQ_getQueueId((MessageQ_Handle)
- NameServerMessageQ_module->msgHandle) & 0xffff) == MESSAGEQ_INDEX,
+ Assert_isTrue( (queueId & 0xffff) == MESSAGEQ_INDEX,
NameServerMessageQ_A_reservedMsgQueueId);
+ /* Additonal check for case with assert disabled */
+ if ((queueId & 0xffff) != MESSAGEQ_INDEX) {
+ return Startup_NOTDONE;
+ }
return (Startup_DONE);
}
diff --git a/packages/ti/sdo/ipc/nsremote/NameServerRemoteNotify.c b/packages/ti/sdo/ipc/nsremote/NameServerRemoteNotify.c
index 239dc32..f11ba53 100644
--- a/packages/ti/sdo/ipc/nsremote/NameServerRemoteNotify.c
+++ b/packages/ti/sdo/ipc/nsremote/NameServerRemoteNotify.c
@@ -83,6 +83,7 @@ Int NameServerRemoteNotify_Instance_init(NameServerRemoteNotify_Object *obj,
Semaphore_Handle semHandle;
Swi_Params swiParams;
Swi_Handle swiHandle;
+ SizeT cacheLineSize;
/* Assert that a NameServerRemoteNotify_Params has been supplied */
Assert_isTrue(params != NULL, Ipc_A_nullArgument);
@@ -101,17 +102,18 @@ Int NameServerRemoteNotify_Instance_init(NameServerRemoteNotify_Object *obj,
obj->localState = NameServerRemoteNotify_IDLE;
obj->remoteState = NameServerRemoteNotify_IDLE;
- /* assert that sharedAddr is cache aligned */
- Assert_isTrue(SharedRegion_getCacheLineSize(obj->regionId) == 0 ||
- ((UArg)params->sharedAddr %
- SharedRegion_getCacheLineSize(obj->regionId) == 0),
+ cacheLineSize = SharedRegion_getCacheLineSize(obj->regionId);
+ if (cacheLineSize != 0) {
+ /* assert that sharedAddr is cache aligned */
+ Assert_isTrue((((UArg)params->sharedAddr) %
+ cacheLineSize == 0),
Ipc_A_addrNotCacheAligned);
- /* asset message structure size is cache aligned */
- Assert_isTrue(SharedRegion_getCacheLineSize(obj->regionId) == 0 ||
- (sizeof(NameServerRemoteNotify_Message) %
- SharedRegion_getCacheLineSize(obj->regionId)) == 0,
+ /* asset message structure size is cache aligned */
+ Assert_isTrue((sizeof(NameServerRemoteNotify_Message) %
+ cacheLineSize) == 0,
NameServerRemoteNotify_A_messageSize);
+ }
obj->msg[0] = (NameServerRemoteNotify_Message *)(params->sharedAddr);
obj->msg[1] = (NameServerRemoteNotify_Message *)((UArg)obj->msg[0] +