Disable entry/exit trace in some List_* functions in QNX
authorvwan@ti.com <vwan@ti.com>
Mon, 24 Aug 2015 17:07:46 +0000 (10:07 -0700)
committerAngela Stegmaier <angelabaker@ti.com>
Mon, 5 Oct 2015 19:28:23 +0000 (14:28 -0500)
Some functions in the List module are called with interrupts disabled. When
these functions write to the slog (IPC_DEBUG_SLOG_LEVEL=7), a hard hang
is occasionally observed. This patch disables the entry/exit trace in these
functions to prevent the system from entering the deadlock state.

Signed-off-by: VW <vwan@ti.com>
qnx/src/ipc3x_dev/ti/syslink/utils/hlos/knl/List.c

index 4481c876d1182780af1e26db9f8cca1f03f91687..467036b1abee5538a299115017c9da6f14b2c1e5 100644 (file)
@@ -758,7 +758,7 @@ List_dequeue (List_Handle handle)
     List_Object * obj  = (List_Object *) handle;
     IArg          key;
 
-    GT_1trace (curTrace, GT_ENTER, "List_dequeue", handle);
+/*    GT_1trace (curTrace, GT_ENTER, "List_dequeue", handle); */
 
     GT_assert (curTrace, (handle != NULL));
 
@@ -794,7 +794,7 @@ List_dequeue (List_Handle handle)
     }
 #endif /* if !defined(IPC_BUILD_OPTIMIZE) */
 
-    GT_1trace (curTrace, GT_LEAVE, "List_dequeue", elem);
+/*    GT_1trace (curTrace, GT_LEAVE, "List_dequeue", elem); */
 
     /*! @retval Valid-pointer Pointer to first element */
     return elem ;
@@ -808,7 +808,7 @@ List_enqueue (List_Handle handle, List_Elem * elem)
     List_Object * obj    = (List_Object *) handle;
     IArg          key    = 0;
 
-    GT_2trace (curTrace, GT_ENTER, "List_enqueue", handle, elem);
+/*    GT_2trace (curTrace, GT_ENTER, "List_enqueue", handle, elem); */
 
     GT_assert (curTrace, (handle != NULL));
     GT_assert (curTrace, (elem != NULL));
@@ -844,7 +844,7 @@ List_enqueue (List_Handle handle, List_Elem * elem)
     }
 #endif /* if !defined(IPC_BUILD_OPTIMIZE) */
 
-    GT_0trace (curTrace, GT_LEAVE, "List_enqueue");
+/*    GT_0trace (curTrace, GT_LEAVE, "List_enqueue"); */
 }
 
 
@@ -855,7 +855,7 @@ List_enqueueHead (List_Handle handle, List_Elem * elem)
     List_Object * obj    = (List_Object *) handle;
     IArg          key;
 
-    GT_2trace (curTrace, GT_ENTER, "List_enqueueHead", handle, elem);
+/*    GT_2trace (curTrace, GT_ENTER, "List_enqueueHead", handle, elem); */
 
     GT_assert (curTrace, (handle != NULL));
     GT_assert (curTrace, (elem != NULL));
@@ -891,7 +891,7 @@ List_enqueueHead (List_Handle handle, List_Elem * elem)
     }
 #endif /* if !defined(IPC_BUILD_OPTIMIZE) */
 
-    GT_0trace (curTrace, GT_LEAVE, "List_enqueueHead");
+/*    GT_0trace (curTrace, GT_LEAVE, "List_enqueueHead"); */
 }