OSDN Git Service

debug mtx
authorryuz <ryuz@users.sourceforge.jp>
Tue, 26 Apr 2011 13:59:25 +0000 (22:59 +0900)
committerryuz <ryuz@users.sourceforge.jp>
Tue, 26 Apr 2011 13:59:25 +0000 (22:59 +0900)
aplfw/system/sysapi/sysapi_local.h
kernel/source/object/mtx/loc_mtx.c
kernel/source/object/mtx/tloc_mtx.c
kernel/source/object/mtx/unl_mtx.c

index 832ece4..2b345bd 100755 (executable)
@@ -18,7 +18,8 @@
 #include "system/sysmem/sysmemheap_local.h"
 #include "library/container/valmemheap/valmemheap_local.h"
 
-#define _HOS_SYSPAI_USEMTX
+
+/* #define _HOS_SYSPAI_USEMTX */
 
 
 /* HOS-V4a 内部変数の参照(インチキ) */
index e7ac774..ab64721 100755 (executable)
@@ -139,10 +139,10 @@ ER loc_mtx(ID mtxid)
                        if ( _KERNEL_TSK_GET_TSKPRI(tcb_lock) > _KERNEL_TSK_GET_TSKPRI(tcb) )
                        {
                                _KERNEL_TSK_SET_TSKPRI(tcb_lock, _KERNEL_TSK_GET_TSKPRI(tcb));
-                               if ( _KERNEL_TSK_GET_TSKSTAT(tcb) == TTS_RDY )
+                               if ( _KERNEL_TSK_GET_TSKSTAT(tcb_lock) == TTS_RDY )
                                {
-                                       _KERNEL_SYS_RMV_RDQ(tskhdl);
-                                       _KERNEL_SYS_ADD_RDQ(tskhdl);
+                                       _KERNEL_SYS_RMV_RDQ(tskhdl_lock);
+                                       _KERNEL_SYS_ADD_RDQ(tskhdl_lock);
                                }
                        }
                }
index f87a6b8..94732b2 100755 (executable)
@@ -173,10 +173,10 @@ ER _kernel_loc_mtx(ID mtxid, TMO tmout)
                                if ( _KERNEL_TSK_GET_TSKPRI(tcb_lock) > _KERNEL_TSK_GET_TSKPRI(tcb) )
                                {
                                        _KERNEL_TSK_SET_TSKPRI(tcb_lock, _KERNEL_TSK_GET_TSKPRI(tcb));
-                                       if ( _KERNEL_TSK_GET_TSKSTAT(tcb) == TTS_RDY )
+                                       if ( _KERNEL_TSK_GET_TSKSTAT(tcb_lock) == TTS_RDY )
                                        {
-                                               _KERNEL_SYS_RMV_RDQ(tskhdl);
-                                               _KERNEL_SYS_ADD_RDQ(tskhdl);
+                                               _KERNEL_SYS_RMV_RDQ(tskhdl_lock);
+                                               _KERNEL_SYS_ADD_RDQ(tskhdl_lock);
                                        }
                                }
                        }
index 59a4519..27cf81f 100755 (executable)
@@ -86,11 +86,8 @@ ER unl_mtx(ID mtxid)
        {
                /* %jp{優先度を元に戻す} */
                _KERNEL_TSK_SET_TSKPRI(tcb, _KERNEL_TSK_GET_TSKBPRI(tcb));              
-               if ( _KERNEL_TSK_GET_TSKSTAT(tcb) == TTS_RDY )
-               {
-                       _KERNEL_SYS_RMV_RDQ(tskhdl);
-                       _KERNEL_SYS_ADD_RDQ(tskhdl);
-               }
+               _KERNEL_SYS_RMV_RDQ(tskhdl);
+               _KERNEL_SYS_ADD_RDQ(tskhdl);
        }
        
        /* %jp{タスクディスパッチの実行} */