Compare commits
11 Commits
master
...
OpenHarmon
Author | SHA1 | Date |
---|---|---|
|
270d5edb5f | |
|
aafc474a2f | |
|
37d08b1d14 | |
|
1064329c3a | |
|
95d022d129 | |
|
648124ac19 | |
|
f2c2a2e21f | |
|
c754baab1e | |
|
21087fbc5c | |
|
1848f31fdf | |
|
dfc582aecd |
|
@ -270,6 +270,7 @@ STATIC INT32 DoMqueueClose(struct mqpersonal *privateMqPersonal)
|
||||||
{
|
{
|
||||||
struct mqarray *mqueueCB = NULL;
|
struct mqarray *mqueueCB = NULL;
|
||||||
struct mqpersonal *tmp = NULL;
|
struct mqpersonal *tmp = NULL;
|
||||||
|
INT32 ret;
|
||||||
|
|
||||||
mqueueCB = privateMqPersonal->mq_posixdes;
|
mqueueCB = privateMqPersonal->mq_posixdes;
|
||||||
if (mqueueCB == NULL || mqueueCB->mq_personal == NULL) {
|
if (mqueueCB == NULL || mqueueCB->mq_personal == NULL) {
|
||||||
|
@ -277,6 +278,12 @@ STATIC INT32 DoMqueueClose(struct mqpersonal *privateMqPersonal)
|
||||||
return LOS_NOK;
|
return LOS_NOK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if ((mqueueCB->unlinkflag == TRUE) && (privateMqPersonal->mq_next == NULL)) {
|
||||||
|
ret = DoMqueueDelete(mqueueCB);
|
||||||
|
if (ret < 0) {
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
}
|
||||||
/* find the personal and remove */
|
/* find the personal and remove */
|
||||||
if (mqueueCB->mq_personal == privateMqPersonal) {
|
if (mqueueCB->mq_personal == privateMqPersonal) {
|
||||||
mqueueCB->mq_personal = privateMqPersonal->mq_next;
|
mqueueCB->mq_personal = privateMqPersonal->mq_next;
|
||||||
|
@ -298,9 +305,6 @@ STATIC INT32 DoMqueueClose(struct mqpersonal *privateMqPersonal)
|
||||||
/* free the personal */
|
/* free the personal */
|
||||||
(VOID)LOS_MemFree(OS_SYS_MEM_ADDR, privateMqPersonal);
|
(VOID)LOS_MemFree(OS_SYS_MEM_ADDR, privateMqPersonal);
|
||||||
|
|
||||||
if ((mqueueCB->unlinkflag == TRUE) && (mqueueCB->mq_personal == NULL)) {
|
|
||||||
return DoMqueueDelete(mqueueCB);
|
|
||||||
}
|
|
||||||
return LOS_OK;
|
return LOS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -604,17 +608,19 @@ int OsMqGetAttr(mqd_t personal, struct mq_attr *mqAttr)
|
||||||
struct mqarray *mqueueCB = NULL;
|
struct mqarray *mqueueCB = NULL;
|
||||||
struct mqpersonal *privateMqPersonal = NULL;
|
struct mqpersonal *privateMqPersonal = NULL;
|
||||||
|
|
||||||
|
(VOID)pthread_mutex_lock(&IPC_QUEUE_MUTEX);
|
||||||
privateMqPersonal = MqGetPrivDataBuff(personal);
|
privateMqPersonal = MqGetPrivDataBuff(personal);
|
||||||
if (privateMqPersonal == NULL) {
|
if (privateMqPersonal == NULL) {
|
||||||
|
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mqAttr == NULL) {
|
if (mqAttr == NULL) {
|
||||||
errno = EINVAL;
|
errno = EINVAL;
|
||||||
|
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
(VOID)pthread_mutex_lock(&IPC_QUEUE_MUTEX);
|
|
||||||
if (privateMqPersonal->mq_status != MQ_USE_MAGIC) {
|
if (privateMqPersonal->mq_status != MQ_USE_MAGIC) {
|
||||||
errno = EBADF;
|
errno = EBADF;
|
||||||
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
||||||
|
@ -634,17 +640,19 @@ int OsMqSetAttr(mqd_t personal, const struct mq_attr *mqSetAttr, struct mq_attr
|
||||||
{
|
{
|
||||||
struct mqpersonal *privateMqPersonal = NULL;
|
struct mqpersonal *privateMqPersonal = NULL;
|
||||||
|
|
||||||
|
(VOID)pthread_mutex_lock(&IPC_QUEUE_MUTEX);
|
||||||
privateMqPersonal = MqGetPrivDataBuff(personal);
|
privateMqPersonal = MqGetPrivDataBuff(personal);
|
||||||
if (privateMqPersonal == NULL) {
|
if (privateMqPersonal == NULL) {
|
||||||
|
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mqSetAttr == NULL) {
|
if (mqSetAttr == NULL) {
|
||||||
errno = EINVAL;
|
errno = EINVAL;
|
||||||
|
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
(VOID)pthread_mutex_lock(&IPC_QUEUE_MUTEX);
|
|
||||||
if (privateMqPersonal->mq_status != MQ_USE_MAGIC) {
|
if (privateMqPersonal->mq_status != MQ_USE_MAGIC) {
|
||||||
errno = EBADF;
|
errno = EBADF;
|
||||||
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
(VOID)pthread_mutex_unlock(&IPC_QUEUE_MUTEX);
|
||||||
|
|
|
@ -6341,7 +6341,7 @@ diff -Nupr old/fs/jffs2/summary.h new/fs/jffs2/summary.h
|
||||||
diff -Nupr old/fs/jffs2/super.c new/fs/jffs2/super.c
|
diff -Nupr old/fs/jffs2/super.c new/fs/jffs2/super.c
|
||||||
--- old/fs/jffs2/super.c 2022-05-09 17:22:53.000000000 +0800
|
--- old/fs/jffs2/super.c 2022-05-09 17:22:53.000000000 +0800
|
||||||
+++ new/fs/jffs2/super.c 2022-05-09 20:09:32.170000000 +0800
|
+++ new/fs/jffs2/super.c 2022-05-09 20:09:32.170000000 +0800
|
||||||
@@ -9,433 +9,188 @@
|
@@ -9,434 +9,188 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -6419,6 +6419,7 @@ diff -Nupr old/fs/jffs2/super.c new/fs/jffs2/super.c
|
||||||
+ c->cleanmarker_size = sizeof(struct jffs2_unknown_node);
|
+ c->cleanmarker_size = sizeof(struct jffs2_unknown_node);
|
||||||
|
|
||||||
- mutex_init(&f->sem);
|
- mutex_init(&f->sem);
|
||||||
|
- f->target = NULL;
|
||||||
- inode_init_once(&f->vfs_inode);
|
- inode_init_once(&f->vfs_inode);
|
||||||
-}
|
-}
|
||||||
+ ret = jffs2_do_mount_fs(c);
|
+ ret = jffs2_do_mount_fs(c);
|
||||||
|
|
|
@ -401,7 +401,7 @@ ssize_t SysSendMsg(int s, const struct msghdr *message, int flags)
|
||||||
CHECK_ASPACE(message, sizeof(struct msghdr));
|
CHECK_ASPACE(message, sizeof(struct msghdr));
|
||||||
CPY_FROM_CONST_USER(struct msghdr, message);
|
CPY_FROM_CONST_USER(struct msghdr, message);
|
||||||
|
|
||||||
if (message && message->msg_iovlen > IOV_MAX) {
|
if (message && (size_t)message->msg_iovlen > IOV_MAX) {
|
||||||
set_errno(EMSGSIZE);
|
set_errno(EMSGSIZE);
|
||||||
return -get_errno();
|
return -get_errno();
|
||||||
}
|
}
|
||||||
|
@ -449,7 +449,7 @@ ssize_t SysRecvMsg(int s, struct msghdr *message, int flags)
|
||||||
CHECK_ASPACE(message, sizeof(struct msghdr));
|
CHECK_ASPACE(message, sizeof(struct msghdr));
|
||||||
CPY_FROM_NONCONST_USER(message);
|
CPY_FROM_NONCONST_USER(message);
|
||||||
|
|
||||||
if (message && message->msg_iovlen > IOV_MAX) {
|
if (message && (size_t)message->msg_iovlen > IOV_MAX) {
|
||||||
set_errno(EMSGSIZE);
|
set_errno(EMSGSIZE);
|
||||||
return -get_errno();
|
return -get_errno();
|
||||||
}
|
}
|
||||||
|
|
|
@ -124,6 +124,11 @@ LITEOS_BASELIB += -lcommon
|
||||||
LIB_SUBDIRS += kernel/common
|
LIB_SUBDIRS += kernel/common
|
||||||
LITEOS_KERNEL_INCLUDE += -I $(LITEOSTOPDIR)/kernel/common
|
LITEOS_KERNEL_INCLUDE += -I $(LITEOSTOPDIR)/kernel/common
|
||||||
|
|
||||||
|
ifeq ($(LOSCFG_KERNEL_CONTAINER), y)
|
||||||
|
LITEOS_BASELIB += -lcontainer
|
||||||
|
LIB_SUBDIRS += kernel/extended/container
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(LOSCFG_KERNEL_CPPSUPPORT), y)
|
ifeq ($(LOSCFG_KERNEL_CPPSUPPORT), y)
|
||||||
LITEOS_BASELIB += -lcppsupport
|
LITEOS_BASELIB += -lcppsupport
|
||||||
LIB_SUBDIRS += kernel/extended/cppsupport
|
LIB_SUBDIRS += kernel/extended/cppsupport
|
||||||
|
|
Loading…
Reference in New Issue