Added local gate for NULL service callback and fixed bug where resource node offset...
[keystone-rtos/rm-lld.git] / test / rm_test.c
index 00cf52acfc4138c166dd60e9e4650c4a2e72c460..173a5f2cf6e41d471ed385c8746598f37efa44b6 100644 (file)
@@ -140,6 +140,9 @@ extern const char rmGlobalPolicy[];
 /* RM test Static Policy provided to RM Client Delegate and Client */
 extern const char rmStaticPolicy[];
 
+/* OSAL RM Local Gate Initialization. */
+extern void Osal_rmLocalGateInit (void);
+
 /**********************************************************************
  ********************** Global Variables ******************************
  **********************************************************************/
@@ -991,7 +994,7 @@ void rmClientTsk(UArg arg0, UArg arg1)
     while (numStaticResponses > 0) {
         /* Loop until all static request validations have been received */
         for (i = 0; i < MAX_STATIC_ALLOCATION_RESPS; i++) {
-            if (staticResponseQueue[i].serviceId != 0) {
+            if (staticResponseQueue[i].serviceId != 0) {            
                 for (j = 0; j < MAX_QUEUED_SERVICE_RESPONSES; j++) {
                     if ((staticResponseQueue[i].serviceId == responseInfoQueue[j].serviceId) &&
                         (staticResponseQueue[i].rmHandle == responseInfoQueue[j].rmHandle)) {
@@ -1264,6 +1267,10 @@ void rmStartupTsk(UArg arg0, UArg arg1)
         System_printf("Core %d: Registered RM Client <=> RM CD transport with RM Client instance\n", coreNum);
     }
 
+    /* Create the gate internal to RM for service requests not specifying a callback function
+     * and needing a blocking operation to complete */
+    Osal_rmLocalGateInit();
+
     /* Create the RM receive task.  Assign higher priority than the test tasks so that
      * when they spin waiting for messages from other RM instances the receive task is
      * executed. */
@@ -1272,7 +1279,6 @@ void rmStartupTsk(UArg arg0, UArg arg1)
     taskParams.priority = 2;
     rmReceiveTskHandle = Task_create (rmReceiveTsk, &taskParams, NULL);
     
-    
     /* Create the RM test tasks. */
     if (coreNum == 0) {
         System_printf("Core %d: Creating RM server task...\n", coreNum);