fix: 修复类型不匹配问题
Signed-off-by: zhushengle <zhushengle@huawei.com> Change-Id: I31e16c9716de1223db7e4de916af3e010ca5f4e4
This commit is contained in:
parent
33c4e194b8
commit
65d5526c70
|
@ -1249,19 +1249,19 @@ EXIT:
|
|||
return err;
|
||||
}
|
||||
|
||||
UINT32 OsUserTaskOperatePermissionsCheck(LosTaskCB *taskCB)
|
||||
INT32 OsUserTaskOperatePermissionsCheck(const LosTaskCB *taskCB)
|
||||
{
|
||||
return OsUserProcessOperatePermissionsCheck(taskCB, OsCurrProcessGet()->processID);
|
||||
}
|
||||
|
||||
UINT32 OsUserProcessOperatePermissionsCheck(LosTaskCB *taskCB, UINT32 processID)
|
||||
INT32 OsUserProcessOperatePermissionsCheck(const LosTaskCB *taskCB, UINT32 processID)
|
||||
{
|
||||
if (taskCB == NULL) {
|
||||
return LOS_EINVAL;
|
||||
}
|
||||
|
||||
if (processID == OS_INVALID_VALUE) {
|
||||
return OS_INVALID_VALUE;
|
||||
return LOS_EINVAL;
|
||||
}
|
||||
|
||||
if (taskCB->taskStatus & OS_TASK_STATUS_UNUSED) {
|
||||
|
|
|
@ -323,8 +323,8 @@ extern UINT32 OsCreateUserTask(UINT32 processID, TSK_INIT_PARAM_S *initParam);
|
|||
extern INT32 OsSetTaskName(LosTaskCB *taskCB, const CHAR *name, BOOL setPName);
|
||||
extern VOID OsTaskCBRecycleToFree(VOID);
|
||||
extern VOID OsRunningTaskToExit(LosTaskCB *runTask, UINT32 status);
|
||||
extern UINT32 OsUserTaskOperatePermissionsCheck(LosTaskCB *taskCB);
|
||||
extern UINT32 OsUserProcessOperatePermissionsCheck(LosTaskCB *taskCB, UINT32 processID);
|
||||
extern INT32 OsUserTaskOperatePermissionsCheck(const LosTaskCB *taskCB);
|
||||
extern INT32 OsUserProcessOperatePermissionsCheck(const LosTaskCB *taskCB, UINT32 processID);
|
||||
extern INT32 OsTcbDispatch(LosTaskCB *stcb, siginfo_t *info);
|
||||
extern VOID OsWriteResourceEvent(UINT32 events);
|
||||
extern VOID OsWriteResourceEventUnsafe(UINT32 events);
|
||||
|
|
|
@ -112,16 +112,16 @@ STATIC VOID OsFutexShowTaskNodeAttr(const LOS_DL_LIST *futexList)
|
|||
LOS_DL_LIST *queueList = NULL;
|
||||
|
||||
tempNode = OS_FUTEX_FROM_FUTEXLIST(futexList);
|
||||
PRINTK("key(pid) : 0x%x(%d) : ->", tempNode->key, tempNode->pid);
|
||||
PRINTK("key(pid) : 0x%x(%u) : ->", tempNode->key, tempNode->pid);
|
||||
|
||||
for (queueList = &tempNode->queueList; ;) {
|
||||
lastNode = OS_FUTEX_FROM_QUEUELIST(queueList);
|
||||
if (!LOS_ListEmpty(&(lastNode->pendList))) {
|
||||
taskCB = OS_TCB_FROM_PENDLIST(LOS_DL_LIST_FIRST(&(lastNode->pendList)));
|
||||
PRINTK(" %d(%d) ->", taskCB->taskID, taskCB->priority);
|
||||
PRINTK(" %u(%u) ->", taskCB->taskID, taskCB->priority);
|
||||
} else {
|
||||
taskCB = LOS_DL_LIST_ENTRY(lastNode, LosTaskCB, futex);
|
||||
PRINTK(" %d(%d) ->", taskCB->taskID, -1);
|
||||
PRINTK(" %u(%d) ->", taskCB->taskID, -1);
|
||||
}
|
||||
queueList = queueList->pstNext;
|
||||
if (queueList == &tempNode->queueList) {
|
||||
|
|
|
@ -173,7 +173,7 @@ LITE_OS_SEC_TEXT_MINOR VOID OsShellCmdDumpSched(VOID)
|
|||
|
||||
affinity = (UINT32)taskCB->cpuAffiMask;
|
||||
|
||||
PRINTK("%-30s0x%-6x%+16lf ms %10d\n", taskCB->taskName, taskCB->taskID,
|
||||
PRINTK("%-30s0x%-6x%+16lf ms %10u\n", taskCB->taskName, taskCB->taskID,
|
||||
(DOUBLE)(taskCB->schedStat.allRuntime) / NS_PER_MS,
|
||||
taskCB->schedStat.allContextSwitch);
|
||||
|
||||
|
@ -183,7 +183,7 @@ LITE_OS_SEC_TEXT_MINOR VOID OsShellCmdDumpSched(VOID)
|
|||
}
|
||||
|
||||
PRINTK(" "
|
||||
"CPU%d %+16lf ms %12d\n", cpuid,
|
||||
"CPU%u %+16lf ms %12u\n", cpuid,
|
||||
(DOUBLE)(taskCB->schedStat.schedPercpu[cpuid].runtime) / NS_PER_MS,
|
||||
taskCB->schedStat.schedPercpu[cpuid].contexSwitch);
|
||||
}
|
||||
|
@ -251,7 +251,7 @@ LITE_OS_SEC_TEXT_MINOR VOID OsMpStaticShow(UINT64 mpStaticPastTime)
|
|||
"---------- ---------- ---------- ----------\n");
|
||||
|
||||
for (cpuid = 0; cpuid < LOSCFG_KERNEL_CORE_NUM; cpuid++) {
|
||||
PRINTK("CPU%d %+10lf%14d%14d%14d %+11lf %+11lf %+11lf%14d %+11lf\n", cpuid,
|
||||
PRINTK("CPU%u %+10lf%14u%14u%14u %+11lf %+11lf %+11lf%14u %+11lf\n", cpuid,
|
||||
((DOUBLE)(g_mpStatPercpu[cpuid].idleRuntime) / mpStaticPastTime) * DECIMAL_TO_PERCENTAGE,
|
||||
g_mpStatPercpu[cpuid].contexSwitch,
|
||||
g_mpStatPercpu[cpuid].hwiNum,
|
||||
|
|
|
@ -43,7 +43,6 @@
|
|||
#include "capability_api.h"
|
||||
#endif
|
||||
|
||||
|
||||
static int OsPermissionToCheck(unsigned int pid, unsigned int who)
|
||||
{
|
||||
int ret = LOS_GetProcessGroupID(pid);
|
||||
|
@ -78,8 +77,8 @@ static int OsUserTaskSchedulerSet(unsigned int tid, unsigned short policy, unsig
|
|||
return EINVAL;
|
||||
}
|
||||
|
||||
SCHEDULER_LOCK(intSave);
|
||||
LosTaskCB *taskCB = OS_TCB_FROM_TID(tid);
|
||||
SCHEDULER_LOCK(intSave);
|
||||
ret = OsUserTaskOperatePermissionsCheck(taskCB);
|
||||
if (ret != LOS_OK) {
|
||||
SCHEDULER_UNLOCK(intSave);
|
||||
|
@ -100,13 +99,14 @@ static int OsUserTaskSchedulerSet(unsigned int tid, unsigned short policy, unsig
|
|||
|
||||
void SysSchedYield(int type)
|
||||
{
|
||||
(void)type;
|
||||
|
||||
(void)LOS_TaskYield();
|
||||
return;
|
||||
}
|
||||
|
||||
int SysSchedGetScheduler(int id, int flag)
|
||||
{
|
||||
LosTaskCB *taskCB = NULL;
|
||||
unsigned int intSave;
|
||||
int policy;
|
||||
int ret;
|
||||
|
@ -116,15 +116,15 @@ int SysSchedGetScheduler(int id, int flag)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
LosTaskCB *taskCB = OS_TCB_FROM_TID(id);
|
||||
SCHEDULER_LOCK(intSave);
|
||||
taskCB = OS_TCB_FROM_TID(id);
|
||||
ret = OsUserTaskOperatePermissionsCheck(taskCB);
|
||||
if (ret != LOS_OK) {
|
||||
SCHEDULER_UNLOCK(intSave);
|
||||
return -ret;
|
||||
}
|
||||
|
||||
policy = taskCB->policy;
|
||||
policy = (int)taskCB->policy;
|
||||
SCHEDULER_UNLOCK(intSave);
|
||||
return policy;
|
||||
}
|
||||
|
@ -158,8 +158,7 @@ int SysSchedSetScheduler(int id, int policy, int prio, int flag)
|
|||
|
||||
int SysSchedGetParam(int id, int flag)
|
||||
{
|
||||
LosTaskCB *taskCB = NULL;
|
||||
int pri;
|
||||
int prio;
|
||||
unsigned int intSave;
|
||||
|
||||
if (flag < 0) {
|
||||
|
@ -167,17 +166,17 @@ int SysSchedGetParam(int id, int flag)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
LosTaskCB *taskCB = OS_TCB_FROM_TID(id);
|
||||
SCHEDULER_LOCK(intSave);
|
||||
taskCB = OS_TCB_FROM_TID(id);
|
||||
pri = OsUserTaskOperatePermissionsCheck(taskCB);
|
||||
if (pri != LOS_OK) {
|
||||
prio = OsUserTaskOperatePermissionsCheck(taskCB);
|
||||
if (prio != LOS_OK) {
|
||||
SCHEDULER_UNLOCK(intSave);
|
||||
return -pri;
|
||||
return -prio;
|
||||
}
|
||||
|
||||
pri = taskCB->priority;
|
||||
prio = (int)taskCB->priority;
|
||||
SCHEDULER_UNLOCK(intSave);
|
||||
return pri;
|
||||
return prio;
|
||||
}
|
||||
|
||||
if (id == 0) {
|
||||
|
@ -894,17 +893,15 @@ unsigned int SysCreateUserThread(const TSK_ENTRY_FUNC func, const UserTaskParam
|
|||
int SysSetThreadArea(const char *area)
|
||||
{
|
||||
unsigned int intSave;
|
||||
LosTaskCB *taskCB = NULL;
|
||||
LosProcessCB *processCB = NULL;
|
||||
unsigned int ret = LOS_OK;
|
||||
int ret = LOS_OK;
|
||||
|
||||
if (!LOS_IsUserAddress((unsigned long)(uintptr_t)area)) {
|
||||
return EINVAL;
|
||||
}
|
||||
|
||||
LosTaskCB *taskCB = OsCurrTaskGet();
|
||||
SCHEDULER_LOCK(intSave);
|
||||
taskCB = OsCurrTaskGet();
|
||||
processCB = OS_PCB_FROM_PID(taskCB->processID);
|
||||
LosProcessCB *processCB = OS_PCB_FROM_PID(taskCB->processID);
|
||||
if (processCB->processMode != OS_USER_MODE) {
|
||||
ret = EPERM;
|
||||
goto OUT;
|
||||
|
@ -925,20 +922,19 @@ int SysUserThreadSetDetach(unsigned int taskID)
|
|||
{
|
||||
unsigned int intSave;
|
||||
int ret;
|
||||
LosTaskCB *taskCB = NULL;
|
||||
|
||||
if (OS_TID_CHECK_INVALID(taskID)) {
|
||||
return EINVAL;
|
||||
}
|
||||
|
||||
LosTaskCB *taskCB = OS_TCB_FROM_TID(taskID);
|
||||
SCHEDULER_LOCK(intSave);
|
||||
taskCB = OS_TCB_FROM_TID(taskID);
|
||||
ret = OsUserTaskOperatePermissionsCheck(taskCB);
|
||||
if (ret != LOS_OK) {
|
||||
goto EXIT;
|
||||
}
|
||||
|
||||
ret = OsTaskSetDetachUnsafe(taskCB);
|
||||
ret = (int)OsTaskSetDetachUnsafe(taskCB);
|
||||
|
||||
EXIT:
|
||||
SCHEDULER_UNLOCK(intSave);
|
||||
|
@ -948,7 +944,7 @@ EXIT:
|
|||
int SysUserThreadDetach(unsigned int taskID)
|
||||
{
|
||||
unsigned int intSave;
|
||||
unsigned int ret;
|
||||
int ret;
|
||||
|
||||
if (OS_TID_CHECK_INVALID(taskID)) {
|
||||
return EINVAL;
|
||||
|
@ -961,8 +957,7 @@ int SysUserThreadDetach(unsigned int taskID)
|
|||
return ret;
|
||||
}
|
||||
|
||||
ret = LOS_TaskDelete(taskID);
|
||||
if (ret != LOS_OK) {
|
||||
if (LOS_TaskDelete(taskID) != LOS_OK) {
|
||||
return ESRCH;
|
||||
}
|
||||
|
||||
|
@ -972,21 +967,20 @@ int SysUserThreadDetach(unsigned int taskID)
|
|||
int SysThreadJoin(unsigned int taskID)
|
||||
{
|
||||
unsigned int intSave;
|
||||
unsigned int ret;
|
||||
LosTaskCB *taskCB = NULL;
|
||||
int ret;
|
||||
|
||||
if (OS_TID_CHECK_INVALID(taskID)) {
|
||||
return EINVAL;
|
||||
}
|
||||
|
||||
LosTaskCB *taskCB = OS_TCB_FROM_TID(taskID);
|
||||
SCHEDULER_LOCK(intSave);
|
||||
taskCB = OS_TCB_FROM_TID(taskID);
|
||||
ret = OsUserTaskOperatePermissionsCheck(taskCB);
|
||||
if (ret != LOS_OK) {
|
||||
goto EXIT;
|
||||
}
|
||||
|
||||
ret = OsTaskJoinPendUnsafe(OS_TCB_FROM_TID(taskID));
|
||||
ret = (int)OsTaskJoinPendUnsafe(OS_TCB_FROM_TID(taskID));
|
||||
|
||||
EXIT:
|
||||
SCHEDULER_UNLOCK(intSave);
|
||||
|
|
Loading…
Reference in New Issue