summaryrefslogtreecommitdiff
path: root/components/lwp
diff options
context:
space:
mode:
authorShicheng Chu <[email protected]>2023-04-04 21:06:27 +0800
committerGitHub <[email protected]>2023-04-04 09:06:27 -0400
commit93f3cb30e48d5de341bda09fa806120e2bc3f3ad (patch)
treeb23b2343674fecbc3fdfbcd49220488da21472ed /components/lwp
parent8a52e65013d1abb7cfc032409000533000ccd0c2 (diff)
[kernel] 将rt_thread结构体改为显式继承rt_object (#7131)
Diffstat (limited to 'components/lwp')
-rw-r--r--components/lwp/arch/x86/i386/lwp_arch.c4
-rw-r--r--components/lwp/lwp.c2
-rw-r--r--components/lwp/lwp_pid.c8
-rw-r--r--components/lwp/lwp_syscall.c8
4 files changed, 11 insertions, 11 deletions
diff --git a/components/lwp/arch/x86/i386/lwp_arch.c b/components/lwp/arch/x86/i386/lwp_arch.c
index aa93abd3f6..9f9e846582 100644
--- a/components/lwp/arch/x86/i386/lwp_arch.c
+++ b/components/lwp/arch/x86/i386/lwp_arch.c
@@ -48,7 +48,7 @@ int arch_expand_user_stack(void *addr)
else /* map failed, send signal SIGSEGV */
{
#ifdef RT_USING_SIGNALS
- dbg_log(DBG_ERROR, "[fault] thread %s mapped addr %p failed!\n", rt_thread_self()->name, addr);
+ dbg_log(DBG_ERROR, "[fault] thread %s mapped addr %p failed!\n", rt_thread_self()->parent.name, addr);
lwp_thread_kill(rt_thread_self(), SIGSEGV);
ret = 1; /* return 1, will return back to intr, then check exit */
#endif
@@ -57,7 +57,7 @@ int arch_expand_user_stack(void *addr)
else /* not stack, send signal SIGSEGV */
{
#ifdef RT_USING_SIGNALS
- dbg_log(DBG_ERROR, "[fault] thread %s access unmapped addr %p!\n", rt_thread_self()->name, addr);
+ dbg_log(DBG_ERROR, "[fault] thread %s access unmapped addr %p!\n", rt_thread_self()->parent.name, addr);
lwp_thread_kill(rt_thread_self(), SIGSEGV);
ret = 1; /* return 1, will return back to intr, then check exit */
#endif
diff --git a/components/lwp/lwp.c b/components/lwp/lwp.c
index 7fe3230ac5..0af0399cc6 100644
--- a/components/lwp/lwp.c
+++ b/components/lwp/lwp.c
@@ -1034,7 +1034,7 @@ void lwp_cleanup(struct rt_thread *tid)
return;
}
- LOG_I("cleanup thread: %s, stack_addr: %08X", tid->name, tid->stack_addr);
+ LOG_I("cleanup thread: %s, stack_addr: %08X", tid->parent.name, tid->stack_addr);
level = rt_hw_interrupt_disable();
lwp = (struct rt_lwp *)tid->lwp;
diff --git a/components/lwp/lwp_pid.c b/components/lwp/lwp_pid.c
index caff790f5e..d22c3f3d68 100644
--- a/components/lwp/lwp_pid.c
+++ b/components/lwp/lwp_pid.c
@@ -709,11 +709,11 @@ static void print_thread_info(struct rt_thread* thread, int maxlen)
#ifdef RT_USING_SMP
if (thread->oncpu != RT_CPU_DETACHED)
- rt_kprintf("%-*.*s %3d %3d ", maxlen, RT_NAME_MAX, thread->name, thread->oncpu, thread->current_priority);
+ rt_kprintf("%-*.*s %3d %3d ", maxlen, RT_NAME_MAX, thread->parent.name, thread->oncpu, thread->current_priority);
else
- rt_kprintf("%-*.*s N/A %3d ", maxlen, RT_NAME_MAX, thread->name, thread->current_priority);
+ rt_kprintf("%-*.*s N/A %3d ", maxlen, RT_NAME_MAX, thread->parent.name, thread->current_priority);
#else
- rt_kprintf("%-*.*s %3d ", maxlen, RT_NAME_MAX, thread->name, thread->current_priority);
+ rt_kprintf("%-*.*s %3d ", maxlen, RT_NAME_MAX, thread->parent.name, thread->current_priority);
#endif /*RT_USING_SMP*/
stat = (thread->stat & RT_THREAD_STAT_MASK);
@@ -787,7 +787,7 @@ long list_process(void)
thread = threads[index];
level = rt_hw_interrupt_disable();
- if ((thread->type & ~RT_Object_Class_Static) != RT_Object_Class_Thread)
+ if ((thread->parent.type & ~RT_Object_Class_Static) != RT_Object_Class_Thread)
{
rt_hw_interrupt_enable(level);
continue;
diff --git a/components/lwp/lwp_syscall.c b/components/lwp/lwp_syscall.c
index da9812d947..77eb77f556 100644
--- a/components/lwp/lwp_syscall.c
+++ b/components/lwp/lwp_syscall.c
@@ -1525,7 +1525,7 @@ long _sys_clone(void *arg[])
goto fail;
}
- thread = rt_thread_create(self->name,
+ thread = rt_thread_create(self->parent.name,
RT_NULL,
RT_NULL,
self->stack_size,
@@ -1713,7 +1713,7 @@ sysret_t _sys_fork(void)
/* create thread */
self_thread = rt_thread_self();
- thread = rt_thread_create(self_thread->name,
+ thread = rt_thread_create(self_thread->parent.name,
RT_NULL,
RT_NULL,
self_thread->stack_size,
@@ -2361,7 +2361,7 @@ sysret_t sys_execve(const char *path, char *const argv[], char *const envp[])
/* load ok, now set thread name and swap the data of lwp and new_lwp */
level = rt_hw_interrupt_disable();
- rt_strncpy(thread->name, run_name + last_backslash, RT_NAME_MAX);
+ rt_strncpy(thread->parent.name, run_name + last_backslash, RT_NAME_MAX);
rt_pages_free(page, 0);
@@ -2420,7 +2420,7 @@ rt_err_t sys_thread_delete(rt_thread_t thread)
#else
rt_err_t ret = 0;
- if(thread->type != RT_Object_Class_Thread)
+ if(thread->parent.type != RT_Object_Class_Thread)
{
ret = -EINVAL;
goto __exit;