mirror of
https://github.com/DragonOS-Community/DragonOS.git
synced 2025-06-18 12:16:31 +00:00
new: kthread机制
This commit is contained in:
@ -8,7 +8,7 @@
|
||||
* @param arg 传递给测试函数的参数
|
||||
* @return pid_t 测试内核线程的pid
|
||||
*/
|
||||
pid_t ktest_start(uint64_t (*func)(uint64_t arg), uint64_t arg)
|
||||
pid_t ktest_start(int (*func)(void* arg), void* arg)
|
||||
{
|
||||
return kernel_thread(func, arg, 0);
|
||||
}
|
@ -1,9 +1,9 @@
|
||||
#pragma once
|
||||
#include <common/sys/types.h>
|
||||
|
||||
uint64_t ktest_test_bitree(uint64_t arg);
|
||||
uint64_t ktest_test_kfifo(uint64_t arg);
|
||||
uint64_t ktest_test_mutex(uint64_t arg);
|
||||
int ktest_test_bitree(void* arg);
|
||||
int ktest_test_kfifo(void* arg);
|
||||
int ktest_test_mutex(void* arg);
|
||||
|
||||
/**
|
||||
* @brief 开启一个新的内核线程以进行测试
|
||||
@ -12,4 +12,4 @@ uint64_t ktest_test_mutex(uint64_t arg);
|
||||
* @param arg 传递给测试函数的参数
|
||||
* @return pid_t 测试内核线程的pid
|
||||
*/
|
||||
pid_t ktest_start(uint64_t (*func)(uint64_t arg), uint64_t arg);
|
||||
pid_t ktest_start(int (*func)(void* arg), void* arg);
|
@ -119,7 +119,7 @@ static ktest_case_table kt_bitree_func_table[] = {
|
||||
ktest_bitree_case1,
|
||||
};
|
||||
|
||||
uint64_t ktest_test_bitree(uint64_t arg)
|
||||
int ktest_test_bitree(void* arg)
|
||||
{
|
||||
kTEST("Testing bitree...");
|
||||
for (int i = 0; i < sizeof(kt_bitree_func_table) / sizeof(ktest_case_table); ++i)
|
||||
|
@ -152,7 +152,7 @@ static ktest_case_table kt_kfifo_func_table[] = {
|
||||
ktest_kfifo_case0_1,
|
||||
};
|
||||
|
||||
uint64_t ktest_test_kfifo(uint64_t arg)
|
||||
int ktest_test_kfifo(void* arg)
|
||||
{
|
||||
kTEST("Testing kfifo...");
|
||||
for (int i = 0; i < sizeof(kt_kfifo_func_table) / sizeof(ktest_case_table); ++i)
|
||||
|
@ -31,7 +31,7 @@ static long ktest_mutex_case0(uint64_t arg0, uint64_t arg1)
|
||||
* @param arg
|
||||
* @return long
|
||||
*/
|
||||
static unsigned long ktest_mutex_case1_pid1(uint64_t arg)
|
||||
static int ktest_mutex_case1_pid1(void* arg)
|
||||
{
|
||||
kTEST("ktest_mutex_case1_subproc start.");
|
||||
assert(mutex_is_locked(&mtx) == 1);
|
||||
@ -78,7 +78,7 @@ static ktest_case_table kt_mutex_func_table[] = {
|
||||
ktest_mutex_case0,
|
||||
ktest_mutex_case1,
|
||||
};
|
||||
uint64_t ktest_test_mutex(uint64_t arg)
|
||||
int ktest_test_mutex(void* arg)
|
||||
{
|
||||
kTEST("Testing mutex...");
|
||||
mutex_init(&mtx);
|
||||
|
Reference in New Issue
Block a user