commit
2a73894de0
|
@ -347,14 +347,15 @@ ssize_t read(int fd, void *buf, size_t nbyte)
|
||||||
return recv(fd, buf, nbyte, 0);
|
return recv(fd, buf, nbyte, 0);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
if (g_fs->fsFops == NULL || g_fs->fsFops->Read == NULL) {
|
|
||||||
errno = ENOSYS;
|
|
||||||
return FS_FAILURE;
|
|
||||||
}
|
|
||||||
if (g_fs == NULL) {
|
if (g_fs == NULL) {
|
||||||
errno = ENODEV;
|
errno = ENODEV;
|
||||||
return FS_FAILURE;
|
return FS_FAILURE;
|
||||||
}
|
}
|
||||||
|
if (g_fs->fsFops == NULL || g_fs->fsFops->Read == NULL) {
|
||||||
|
errno = ENOSYS;
|
||||||
|
return FS_FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
return g_fs->fsFops->Read(fd, buf, nbyte);
|
return g_fs->fsFops->Read(fd, buf, nbyte);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -89,7 +89,6 @@ LITE_OS_SEC_TEXT_MINOR STATIC VOID OsShellCmdTskInfoData(const LosTaskCB *allTas
|
||||||
{
|
{
|
||||||
const LosTaskCB *taskCB = NULL;
|
const LosTaskCB *taskCB = NULL;
|
||||||
UINT32 loop;
|
UINT32 loop;
|
||||||
UINT32 semId;
|
|
||||||
|
|
||||||
for (loop = 0; loop < g_taskMaxNum; ++loop) {
|
for (loop = 0; loop < g_taskMaxNum; ++loop) {
|
||||||
taskCB = allTaskArray + loop;
|
taskCB = allTaskArray + loop;
|
||||||
|
@ -97,12 +96,10 @@ LITE_OS_SEC_TEXT_MINOR STATIC VOID OsShellCmdTskInfoData(const LosTaskCB *allTas
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
semId = OsGetSemID(taskCB);
|
|
||||||
|
|
||||||
PRINTK("%-23s%-20p0x%-5x", taskCB->taskName, taskCB->taskEntry, taskCB->taskID);
|
PRINTK("%-23s%-20p0x%-5x", taskCB->taskName, taskCB->taskEntry, taskCB->taskID);
|
||||||
PRINTK("%-11u%-13s0x%-11x 0x%-8x 0x%-10x ", taskCB->priority,
|
PRINTK("%-11u%-13s0x%-11x 0x%-8x 0x%-10x ", taskCB->priority,
|
||||||
OsShellCmdConvertTskStatus(taskCB->taskStatus), taskCB->stackSize,
|
OsShellCmdConvertTskStatus(taskCB->taskStatus), taskCB->stackSize,
|
||||||
taskCB->stackPointer, taskCB->topOfStack, semId);
|
taskCB->stackPointer, taskCB->topOfStack);
|
||||||
PRINTK("\n");
|
PRINTK("\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -276,6 +276,7 @@ int OsShellCmdCat(int argc, const char **argv)
|
||||||
|
|
||||||
if (fd == -1) {
|
if (fd == -1) {
|
||||||
ret = -1;
|
ret = -1;
|
||||||
|
free(fullpath);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -38,6 +38,7 @@
|
||||||
|
|
||||||
#define OS_SYS_NS_PER_MSECOND 1000000
|
#define OS_SYS_NS_PER_MSECOND 1000000
|
||||||
#define OS_SYS_NS_PER_SECOND 1000000000
|
#define OS_SYS_NS_PER_SECOND 1000000000
|
||||||
|
#define OS_UINT_MAX (~0U)
|
||||||
|
|
||||||
static inline int MapError(UINT32 err)
|
static inline int MapError(UINT32 err)
|
||||||
{
|
{
|
||||||
|
@ -99,8 +100,7 @@ int pthread_mutex_destroy(pthread_mutex_t *mutex)
|
||||||
int pthread_mutex_timedlock(pthread_mutex_t *mutex, const struct timespec *absTimeout)
|
int pthread_mutex_timedlock(pthread_mutex_t *mutex, const struct timespec *absTimeout)
|
||||||
{
|
{
|
||||||
UINT32 ret;
|
UINT32 ret;
|
||||||
UINT32 timeout;
|
INT64 timeoutMs;
|
||||||
UINT64 timeoutNs;
|
|
||||||
struct timespec curTime = {0};
|
struct timespec curTime = {0};
|
||||||
if ((mutex->magic != _MUX_MAGIC) || (absTimeout->tv_nsec < 0) || (absTimeout->tv_nsec >= OS_SYS_NS_PER_SECOND)) {
|
if ((mutex->magic != _MUX_MAGIC) || (absTimeout->tv_nsec < 0) || (absTimeout->tv_nsec >= OS_SYS_NS_PER_SECOND)) {
|
||||||
return EINVAL;
|
return EINVAL;
|
||||||
|
@ -115,12 +115,13 @@ int pthread_mutex_timedlock(pthread_mutex_t *mutex, const struct timespec *absTi
|
||||||
if (ret != LOS_OK) {
|
if (ret != LOS_OK) {
|
||||||
return EINVAL;
|
return EINVAL;
|
||||||
}
|
}
|
||||||
timeoutNs = (absTimeout->tv_sec - curTime.tv_sec) * OS_SYS_NS_PER_SECOND + (absTimeout->tv_nsec - curTime.tv_nsec);
|
timeoutMs = (absTimeout->tv_sec - curTime.tv_sec) * OS_SYS_MS_PER_SECOND +
|
||||||
if (timeoutNs <= 0) {
|
(absTimeout->tv_nsec - curTime.tv_nsec) / OS_SYS_NS_PER_MSECOND;
|
||||||
return ETIMEDOUT;
|
if (timeoutMs < 0 || timeoutMs >= OS_UINT_MAX) {
|
||||||
|
return EINVAL;
|
||||||
}
|
}
|
||||||
timeout = (timeoutNs + (OS_SYS_NS_PER_MSECOND - 1)) / OS_SYS_NS_PER_MSECOND;
|
|
||||||
ret = LOS_MuxPend(mutex->handle, timeout);
|
ret = LOS_MuxPend(mutex->handle, (UINT32)timeoutMs);
|
||||||
return MapError(ret);
|
return MapError(ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue