summaryrefslogtreecommitdiff
path: root/components
diff options
context:
space:
mode:
authorguo <[email protected]>2022-12-16 18:38:28 +0800
committerGitHub <[email protected]>2022-12-16 18:38:28 +0800
commit68ca9f07a60ad5cbe52b37b52299327b6246e7f7 (patch)
treeb990c35d5b20e515adb604b85b2b10dae0cf034b /components
parent3ea5166376dbc05722d793c3183c15b3a01e7f3a (diff)
[rt-smart] 弱化 RT_USING_LWP,使用 RT_USING_SMART 作为宏配置 (#6740)
* [dfs] sync cromfs * [rt-smart]Weaken RT_USING_LWP, use RT_USING_SMART as macro configuration * [format] fix some format issue.
Diffstat (limited to 'components')
-rw-r--r--components/dfs/filesystems/tmpfs/dfs_tmpfs.c8
-rw-r--r--components/dfs/src/dfs.c12
-rw-r--r--components/dfs/src/dfs_posix.c8
-rwxr-xr-xcomponents/drivers/Kconfig6
-rw-r--r--components/drivers/tty/SConscript2
-rw-r--r--components/drivers/tty/include/tty.h2
-rw-r--r--components/drivers/virtio/virtio.h6
-rw-r--r--components/finsh/msh.c8
-rw-r--r--components/libc/compilers/common/ctime.c8
-rw-r--r--components/lwp/Kconfig12
-rw-r--r--components/lwp/SConscript2
-rw-r--r--components/lwp/arch/aarch64/common/reloc.c2
-rw-r--r--components/lwp/arch/aarch64/cortex-a/lwp_arch.c2
-rw-r--r--components/lwp/arch/aarch64/cortex-a/lwp_arch.h2
-rw-r--r--components/lwp/arch/arm/common/reloc.c4
-rw-r--r--components/lwp/arch/arm/cortex-a/lwp_arch.c2
-rw-r--r--components/lwp/arch/arm/cortex-a/lwp_arch.h2
-rw-r--r--components/lwp/arch/arm/cortex-a/lwp_gcc.S2
-rw-r--r--components/lwp/arch/risc-v/rv64/SConscript2
-rw-r--r--components/lwp/arch/risc-v/rv64/lwp_arch.c4
-rw-r--r--components/lwp/arch/risc-v/rv64/lwp_arch.h4
-rw-r--r--components/lwp/arch/risc-v/rv64/lwp_gcc.S6
-rw-r--r--components/lwp/arch/risc-v/rv64/reloc.c4
-rw-r--r--components/lwp/arch/x86/i386/SConscript2
-rw-r--r--components/lwp/arch/x86/i386/lwp_arch.c4
-rw-r--r--components/lwp/arch/x86/i386/lwp_arch.h6
-rw-r--r--components/lwp/arch/x86/i386/reloc.c4
-rw-r--r--components/lwp/ioremap.c2
-rw-r--r--components/lwp/lwp.c44
-rw-r--r--components/lwp/lwp.h8
-rw-r--r--components/lwp/lwp_arch_comm.h2
-rw-r--r--components/lwp/lwp_futex.c4
-rw-r--r--components/lwp/lwp_mm_area.c2
-rw-r--r--components/lwp/lwp_mm_area.h2
-rw-r--r--components/lwp/lwp_pid.c6
-rw-r--r--components/lwp/lwp_pmutex.c2
-rw-r--r--components/lwp/lwp_shm.c2
-rw-r--r--components/lwp/lwp_syscall.c94
-rw-r--r--components/lwp/lwp_tid.c2
-rw-r--r--components/lwp/lwp_user_mm.c4
-rw-r--r--components/lwp/lwp_user_mm.h2
-rw-r--r--components/lwp/page.c2
-rw-r--r--components/lwp/page.h2
43 files changed, 149 insertions, 157 deletions
diff --git a/components/dfs/filesystems/tmpfs/dfs_tmpfs.c b/components/dfs/filesystems/tmpfs/dfs_tmpfs.c
index a2eebe00f3..7ed8e8f888 100644
--- a/components/dfs/filesystems/tmpfs/dfs_tmpfs.c
+++ b/components/dfs/filesystems/tmpfs/dfs_tmpfs.c
@@ -14,7 +14,7 @@
#include <dfs_fs.h>
#include <dfs_file.h>
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
#include <lwp.h>
#include <lwp_user_mm.h>
#endif
@@ -173,8 +173,8 @@ int dfs_tmpfs_ioctl(struct dfs_fd *file, int cmd, void *args)
switch (cmd)
{
-#ifdef RT_USING_LWP
- case RT_FIOMMAP2:
+#ifdef RT_USING_SMART
+ case RT_FIOMMAP2:
{
struct dfs_mmap2_args *mmap2 = (struct dfs_mmap2_args *)args;
if (mmap2)
@@ -394,7 +394,7 @@ int dfs_tmpfs_open(struct dfs_fd *file)
p_file = dfs_tmpfs_lookup(superblock, parent_path, &size);
if (p_file == NULL)
return -ENOENT;
-
+
/* create a file entry */
d_file = (struct tmpfs_file *)rt_calloc(1, sizeof(struct tmpfs_file));
if (d_file == NULL)
diff --git a/components/dfs/src/dfs.c b/components/dfs/src/dfs.c
index f3f9c2354b..5ec2c7bab9 100644
--- a/components/dfs/src/dfs.c
+++ b/components/dfs/src/dfs.c
@@ -14,7 +14,7 @@
#include <dfs_fs.h>
#include <dfs_file.h>
#include "dfs_private.h"
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
#include <lwp.h>
#endif
@@ -644,7 +644,7 @@ char *dfs_normalize_path(const char *directory, const char *filename)
#ifdef DFS_USING_WORKDIR
if (directory == NULL) /* shall use working directory */
{
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
directory = lwp_getcwd();
#else
directory = &working_directory[0];
@@ -775,7 +775,7 @@ RTM_EXPORT(dfs_normalize_path);
struct dfs_fdtable *dfs_fdtable_get(void)
{
struct dfs_fdtable *fdt;
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
struct rt_lwp *lwp;
lwp = (struct rt_lwp *)rt_thread_self()->lwp;
@@ -790,7 +790,7 @@ struct dfs_fdtable *dfs_fdtable_get(void)
return fdt;
}
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
struct dfs_fdtable *dfs_fdtable_get_pid(int pid)
{
struct rt_lwp *lwp = RT_NULL;
@@ -854,7 +854,7 @@ int list_fd(void)
return 0;
}
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
static int lsofp(int pid)
{
int index;
@@ -964,7 +964,7 @@ int lsof(int argc, char *argv[])
return 0;
}
MSH_CMD_EXPORT(lsof, list open files);
-#endif /* RT_USING_LWP */
+#endif /* RT_USING_SMART */
#endif
/*@}*/
diff --git a/components/dfs/src/dfs_posix.c b/components/dfs/src/dfs_posix.c
index e3efa5bed6..0956e512d7 100644
--- a/components/dfs/src/dfs_posix.c
+++ b/components/dfs/src/dfs_posix.c
@@ -14,7 +14,7 @@
#include <dfs_private.h>
#include <sys/errno.h>
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
#include <lwp.h>
#endif
@@ -866,7 +866,7 @@ int chdir(const char *path)
/* close directory stream */
closedir(d);
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
/* copy full path to working directory */
lwp_setcwd(fullpath);
#else
@@ -916,7 +916,7 @@ void setcwd(char *buf)
{
#ifdef DFS_USING_WORKDIR
dfs_lock();
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
lwp_setcwd(buf);
#else
rt_strncpy(working_directory, buf, DFS_PATH_MAX);
@@ -946,7 +946,7 @@ char *getcwd(char *buf, size_t size)
dfs_lock();
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
dir_buf = lwp_getcwd();
#else
dir_buf = &working_directory[0];
diff --git a/components/drivers/Kconfig b/components/drivers/Kconfig
index da0211683f..735347bcbc 100755
--- a/components/drivers/Kconfig
+++ b/components/drivers/Kconfig
@@ -51,7 +51,7 @@ menuconfig RT_USING_SERIAL
config RT_USING_TTY
bool "Using TTY SYSTEM"
- depends on RT_USING_LWP
+ depends on RT_USING_SMART
default y
if RT_USING_TTY
@@ -567,8 +567,8 @@ endif
config RT_USING_DEV_BUS
bool "Using Device Bus device drivers"
- default y if RT_USING_LWP
- default n if !RT_USING_LWP
+ default y if RT_USING_SMART
+ default n if !RT_USING_SMART
menuconfig RT_USING_WIFI
bool "Using Wi-Fi framework"
diff --git a/components/drivers/tty/SConscript b/components/drivers/tty/SConscript
index 3c561f4e46..d972879b70 100644
--- a/components/drivers/tty/SConscript
+++ b/components/drivers/tty/SConscript
@@ -5,6 +5,6 @@ src = Glob('*.c')
cwd = GetCurrentDir()
CPPPATH = [cwd + "/include"]
-group = DefineGroup('tty', src, depend = ['RT_USING_LWP', 'RT_USING_TTY'], CPPPATH = CPPPATH)
+group = DefineGroup('tty', src, depend = ['RT_USING_SMART', 'RT_USING_TTY'], CPPPATH = CPPPATH)
Return('group')
diff --git a/components/drivers/tty/include/tty.h b/components/drivers/tty/include/tty.h
index 2040cc45f3..6a966262a9 100644
--- a/components/drivers/tty/include/tty.h
+++ b/components/drivers/tty/include/tty.h
@@ -12,7 +12,7 @@
#include <rthw.h>
#include <rtthread.h>
#include <tty_ldisc.h>
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
#include <lwp.h>
#endif
#if defined(RT_USING_POSIX_TERMIOS)
diff --git a/components/drivers/virtio/virtio.h b/components/drivers/virtio/virtio.h
index 297975601b..545c74549d 100644
--- a/components/drivers/virtio/virtio.h
+++ b/components/drivers/virtio/virtio.h
@@ -15,7 +15,7 @@
#include <rthw.h>
#include <rtdef.h>
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
#include <mmu.h>
#include <ioremap.h>
#endif
@@ -47,14 +47,14 @@
#define VIRTIO_F_VERSION_1 32
#define VIRTIO_F_RING_PACKED 34
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
extern rt_mmu_info mmu_info;
#define VIRTIO_VA2PA(vaddr) ((rt_ubase_t)rt_hw_mmu_v2p(&mmu_info, vaddr))
#define VIRTIO_PA2VA(paddr) ((rt_ubase_t)rt_ioremap((void *)paddr, ARCH_PAGE_SIZE))
#else
#define VIRTIO_VA2PA(vaddr) ((rt_ubase_t)vaddr)
#define VIRTIO_PA2VA(paddr) ((rt_ubase_t)paddr)
-#endif /* RT_USING_LWP */
+#endif /* RT_USING_SMART */
#define VIRTIO_PAGE_SHIFT 12
#define VIRTIO_PAGE_SIZE (1 << VIRTIO_PAGE_SHIFT)
#define VIRTIO_PAGE_ALIGN(addr) (RT_ALIGN(addr, VIRTIO_PAGE_SIZE))
diff --git a/components/finsh/msh.c b/components/finsh/msh.c
index 399aed7ef3..a63e34ddfe 100644
--- a/components/finsh/msh.c
+++ b/components/finsh/msh.c
@@ -294,7 +294,7 @@ static int _msh_exec_cmd(char *cmd, rt_size_t length, int *retp)
return 0;
}
-#if defined(RT_USING_LWP) && defined(DFS_USING_POSIX)
+#if defined(RT_USING_SMART) && defined(DFS_USING_POSIX)
pid_t exec(char*, int, int, char**);
/* check whether a file of the given path exits */
@@ -518,14 +518,14 @@ int msh_exec(char *cmd, rt_size_t length)
}
#endif /* RT_USING_MODULE */
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
/* exec from msh_exec , debug = 0*/
/* _msh_exec_lwp return is pid , <= 0 means failed */
if (_msh_exec_lwp(0, cmd, length) > 0)
{
return 0;
}
-#endif /* RT_USING_LWP */
+#endif /* RT_USING_SMART */
#endif /* DFS_USING_POSIX */
/* truncate the cmd at the first space. */
@@ -721,7 +721,7 @@ void msh_auto_complete(char *prefix)
ptr --;
}
-#if defined(RT_USING_MODULE) || defined(RT_USING_LWP)
+#if defined(RT_USING_MODULE) || defined(RT_USING_SMART)
/* There is a chance that the user want to run the module directly. So
* try to complete the file names. If the completed path is not a
* module, the system won't crash anyway. */
diff --git a/components/libc/compilers/common/ctime.c b/components/libc/compilers/common/ctime.c
index eb755e2263..e1694bda36 100644
--- a/components/libc/compilers/common/ctime.c
+++ b/components/libc/compilers/common/ctime.c
@@ -26,7 +26,7 @@
#include <rtthread.h>
#include <rthw.h>
#include <unistd.h>
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
#include "lwp.h"
#endif
#ifdef RT_USING_POSIX_DELAY
@@ -886,7 +886,7 @@ struct timer_obj
rt_uint32_t reload; /* Reload value in ms */
rt_uint32_t status;
int sigev_signo;
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
pid_t pid;
#endif
};
@@ -906,7 +906,7 @@ static void rtthread_timer_wrapper(void *timerobj)
if (timer->reload)
rt_timer_control(&timer->timer, RT_TIMER_CTRL_SET_TIME, &(timer->reload));
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
sys_kill(timer->pid, timer->sigev_signo);
#else
if(timer->sigev_notify_function != RT_NULL)
@@ -948,7 +948,7 @@ int timer_create(clockid_t clockid, struct sigevent *evp, timer_t *timerid)
rt_snprintf(timername, RT_NAME_MAX, "psx_tm%02d", num++);
num %= 100;
timer->sigev_signo = evp->sigev_signo;
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
timer->pid = lwp_self()->pid;
#endif
timer->sigev_notify_function = evp->sigev_notify_function;
diff --git a/components/lwp/Kconfig b/components/lwp/Kconfig
index c4178c8274..96e761b06b 100644
--- a/components/lwp/Kconfig
+++ b/components/lwp/Kconfig
@@ -1,15 +1,7 @@
menuconfig RT_USING_LWP
bool "light-weight process"
- select RT_USING_DFS
- select RT_USING_LIBC
- select RT_USING_POSIX_CLOCKTIME
- select RT_USING_TTY
- select RT_USING_NULL
- select RT_USING_ZERO
- select RT_USING_RANDOM
- select RT_USING_RTC
- depends on ARCH_ARM_CORTEX_M || ARCH_ARM_ARM9 || ARCH_ARM_CORTEX_A || ARCH_RISCV64
- default n
+ depends on RT_USING_SMART
+ default y
help
The lwP is a light weight process running in user mode.
diff --git a/components/lwp/SConscript b/components/lwp/SConscript
index 0b44b08eb3..76a5567d78 100644
--- a/components/lwp/SConscript
+++ b/components/lwp/SConscript
@@ -40,6 +40,6 @@ if platform in platform_file.keys(): # support platforms
CPPPATH = [cwd]
CPPPATH += [cwd + '/arch/' + arch + '/' + cpu]
-group = DefineGroup('lwP', src, depend = ['RT_USING_LWP'], CPPPATH = CPPPATH)
+group = DefineGroup('lwP', src, depend = ['RT_USING_SMART'], CPPPATH = CPPPATH)
Return('group')
diff --git a/components/lwp/arch/aarch64/common/reloc.c b/components/lwp/arch/aarch64/common/reloc.c
index 4057a5718b..a2c6f1ac87 100644
--- a/components/lwp/arch/aarch64/common/reloc.c
+++ b/components/lwp/arch/aarch64/common/reloc.c
@@ -2,7 +2,7 @@
#include <stdint.h>
#include <string.h>
#include <elf.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
#endif
diff --git a/components/lwp/arch/aarch64/cortex-a/lwp_arch.c b/components/lwp/arch/aarch64/cortex-a/lwp_arch.c
index c5f4cebdb9..77ed5086a7 100644
--- a/components/lwp/arch/aarch64/cortex-a/lwp_arch.c
+++ b/components/lwp/arch/aarch64/cortex-a/lwp_arch.c
@@ -11,7 +11,7 @@
#include <rtthread.h>
#include <rthw.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
diff --git a/components/lwp/arch/aarch64/cortex-a/lwp_arch.h b/components/lwp/arch/aarch64/cortex-a/lwp_arch.h
index 98dcd989b1..33814163ff 100644
--- a/components/lwp/arch/aarch64/cortex-a/lwp_arch.h
+++ b/components/lwp/arch/aarch64/cortex-a/lwp_arch.h
@@ -14,7 +14,7 @@
#include <lwp.h>
#include <lwp_arch_comm.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#define USER_VADDR_TOP 0x0001000000000000UL
#define USER_HEAP_VEND 0x0000ffffB0000000UL
diff --git a/components/lwp/arch/arm/common/reloc.c b/components/lwp/arch/arm/common/reloc.c
index a232df885d..c54c633aa0 100644
--- a/components/lwp/arch/arm/common/reloc.c
+++ b/components/lwp/arch/arm/common/reloc.c
@@ -2,7 +2,7 @@
#include <stdint.h>
#include <string.h>
#include <lwp_elf.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
#endif
@@ -17,7 +17,7 @@ typedef struct
Elf32_Half st_shndx;
} Elf32_sym;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
void arch_elf_reloc(rt_mmu_info *m_info, void *text_start, void *rel_dyn_start, size_t rel_dyn_size, void *got_start, size_t got_size, Elf32_sym *dynsym)
{
size_t rel_off;
diff --git a/components/lwp/arch/arm/cortex-a/lwp_arch.c b/components/lwp/arch/arm/cortex-a/lwp_arch.c
index 814c1513ed..d2072bb4d1 100644
--- a/components/lwp/arch/arm/cortex-a/lwp_arch.c
+++ b/components/lwp/arch/arm/cortex-a/lwp_arch.c
@@ -11,7 +11,7 @@
#include <rtthread.h>
#include <rthw.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
diff --git a/components/lwp/arch/arm/cortex-a/lwp_arch.h b/components/lwp/arch/arm/cortex-a/lwp_arch.h
index d627632493..71a1057224 100644
--- a/components/lwp/arch/arm/cortex-a/lwp_arch.h
+++ b/components/lwp/arch/arm/cortex-a/lwp_arch.h
@@ -13,7 +13,7 @@
#include <lwp.h>
#include <lwp_arch_comm.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#define USER_VADDR_TOP 0xC0000000UL
#define USER_HEAP_VEND 0xB0000000UL
diff --git a/components/lwp/arch/arm/cortex-a/lwp_gcc.S b/components/lwp/arch/arm/cortex-a/lwp_gcc.S
index 30839e5970..c25d5ee3ff 100644
--- a/components/lwp/arch/arm/cortex-a/lwp_gcc.S
+++ b/components/lwp/arch/arm/cortex-a/lwp_gcc.S
@@ -215,7 +215,7 @@ arch_ret_to_user:
2:
movs pc, lr
-#ifdef RT_USING_LWP
+#ifdef RT_USING_SMART
.global lwp_check_debug
lwp_check_debug:
ldr r0, =rt_dbg_ops
diff --git a/components/lwp/arch/risc-v/rv64/SConscript b/components/lwp/arch/risc-v/rv64/SConscript
index e98e7650b1..c815b3db5d 100644
--- a/components/lwp/arch/risc-v/rv64/SConscript
+++ b/components/lwp/arch/risc-v/rv64/SConscript
@@ -6,6 +6,6 @@ cwd = GetCurrentDir()
src = Glob('*.c') + Glob('*.S')
CPPPATH = [cwd]
-group = DefineGroup('lwp-riscv', src, depend = ['RT_USING_LWP'], CPPPATH = CPPPATH)
+group = DefineGroup('lwp-riscv', src, depend = ['RT_USING_SMART'], CPPPATH = CPPPATH)
Return('group')
diff --git a/components/lwp/arch/risc-v/rv64/lwp_arch.c b/components/lwp/arch/risc-v/rv64/lwp_arch.c
index a1e0b8f31a..7cc93a4637 100644
--- a/components/lwp/arch/risc-v/rv64/lwp_arch.c
+++ b/components/lwp/arch/risc-v/rv64/lwp_arch.c
@@ -19,7 +19,7 @@
#include <rthw.h>
#include <stddef.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
@@ -261,4 +261,4 @@ void *arch_get_usp_from_uctx(struct rt_user_context *uctx)
return uctx->sp;
}
-#endif /* RT_USING_USERSPACE */
+#endif /* ARCH_MM_MMU */
diff --git a/components/lwp/arch/risc-v/rv64/lwp_arch.h b/components/lwp/arch/risc-v/rv64/lwp_arch.h
index c1c237c7a5..fa97f58f59 100644
--- a/components/lwp/arch/risc-v/rv64/lwp_arch.h
+++ b/components/lwp/arch/risc-v/rv64/lwp_arch.h
@@ -14,9 +14,9 @@
#include <lwp_arch_comm.h>
#include <riscv_mmu.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
-#ifdef RT_USING_USERSPACE_32BIT_LIMIT
+#ifdef ARCH_MM_MMU_32BIT_LIMIT
#define USER_HEAP_VADDR 0xF0000000UL
#define USER_HEAP_VEND 0xFE000000UL
#define USER_STACK_VSTART 0xE0000000UL
diff --git a/components/lwp/arch/risc-v/rv64/lwp_gcc.S b/components/lwp/arch/risc-v/rv64/lwp_gcc.S
index edf8166e77..c54726bc45 100644
--- a/components/lwp/arch/risc-v/rv64/lwp_gcc.S
+++ b/components/lwp/arch/risc-v/rv64/lwp_gcc.S
@@ -299,7 +299,7 @@ copy_context_loop:
addi a7, a7, -0xfe
beqz a7, arch_signal_quit
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
/* save setting when syscall enter */
call rt_thread_self
call lwp_user_setting_save
@@ -314,7 +314,7 @@ copy_context_loop:
arch_syscall_exit:
CLOSE_INTERRUPT
- #if defined(RT_USING_USERSPACE)
+ #if defined(ARCH_MM_MMU)
LOAD s0, 2 * REGBYTES(sp)
andi s0, s0, 0x100
bnez s0, dont_ret_to_user
@@ -322,7 +322,7 @@ arch_syscall_exit:
#endif
dont_ret_to_user:
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
/* restore setting when syscall exit */
call rt_thread_self
call lwp_user_setting_restore
diff --git a/components/lwp/arch/risc-v/rv64/reloc.c b/components/lwp/arch/risc-v/rv64/reloc.c
index b35f8bef27..def0f82fc1 100644
--- a/components/lwp/arch/risc-v/rv64/reloc.c
+++ b/components/lwp/arch/risc-v/rv64/reloc.c
@@ -2,7 +2,7 @@
#include <stdint.h>
#include <string.h>
#include <elf.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
#endif
@@ -17,7 +17,7 @@ typedef struct
Elf64_Half st_shndx;
} Elf64_sym;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
void arch_elf_reloc(rt_mmu_info *m_info, void *text_start, void *rel_dyn_start, size_t rel_dyn_size, void *got_start, size_t got_size, Elf64_sym *dynsym)
{
size_t rel_off;
diff --git a/components/lwp/arch/x86/i386/SConscript b/components/lwp/arch/x86/i386/SConscript
index c0d3aead77..4088ce09f3 100644
--- a/components/lwp/arch/x86/i386/SConscript
+++ b/components/lwp/arch/x86/i386/SConscript
@@ -6,6 +6,6 @@ cwd = GetCurrentDir()
src = Glob('*.c') + Glob('*.S')
CPPPATH = [cwd]
-group = DefineGroup('lwp-x86-i386', src, depend = ['RT_USING_LWP'], CPPPATH = CPPPATH)
+group = DefineGroup('lwp-x86-i386', src, depend = ['RT_USING_SMART'], CPPPATH = CPPPATH)
Return('group')
diff --git a/components/lwp/arch/x86/i386/lwp_arch.c b/components/lwp/arch/x86/i386/lwp_arch.c
index 5ad150121b..aa93abd3f6 100644
--- a/components/lwp/arch/x86/i386/lwp_arch.c
+++ b/components/lwp/arch/x86/i386/lwp_arch.c
@@ -13,7 +13,7 @@
#include <rtconfig.h>
#include <rtdbg.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <stackframe.h>
#include <interrupt.h>
@@ -368,4 +368,4 @@ void lwp_signal_do_return(rt_hw_stack_frame_t *frame)
}
#endif /* RT_USING_SIGNALS */
-#endif /* RT_USING_USERSPACE */
+#endif /* ARCH_MM_MMU */
diff --git a/components/lwp/arch/x86/i386/lwp_arch.h b/components/lwp/arch/x86/i386/lwp_arch.h
index f9a56ca3f5..7617f4e6b1 100644
--- a/components/lwp/arch/x86/i386/lwp_arch.h
+++ b/components/lwp/arch/x86/i386/lwp_arch.h
@@ -15,7 +15,7 @@
#include <lwp_arch_comm.h>
#include <stackframe.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#define USER_VADDR_TOP 0xFFFFF000UL
#define USER_HEAP_VEND 0xE0000000UL
#define USER_HEAP_VADDR 0x90000000UL
@@ -34,7 +34,7 @@ extern "C" {
rt_thread_t rt_thread_sp_to_thread(void *spmember_addr);
void lwp_signal_do_return(rt_hw_stack_frame_t *frame);
-
+
rt_inline unsigned long rt_hw_ffz(unsigned long x)
{
return __builtin_ffsl(~x) - 1;
@@ -44,6 +44,6 @@ rt_inline unsigned long rt_hw_ffz(unsigned long x)
}
#endif
-#endif /* RT_USING_USERSPACE */
+#endif /* ARCH_MM_MMU */
#endif /*LWP_ARCH_H__*/
diff --git a/components/lwp/arch/x86/i386/reloc.c b/components/lwp/arch/x86/i386/reloc.c
index 9677bd65c6..6e2c791234 100644
--- a/components/lwp/arch/x86/i386/reloc.c
+++ b/components/lwp/arch/x86/i386/reloc.c
@@ -12,7 +12,7 @@
#include <stdint.h>
#include <string.h>
#include <elf.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
#endif
@@ -27,7 +27,7 @@ typedef struct
Elf32_Half st_shndx;
} Elf32_sym;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
void arch_elf_reloc(rt_mmu_info *m_info, void *text_start, void *rel_dyn_start, size_t rel_dyn_size, void *got_start, size_t got_size, Elf32_sym *dynsym)
{
diff --git a/components/lwp/ioremap.c b/components/lwp/ioremap.c
index 7bdd187103..525c8306c0 100644
--- a/components/lwp/ioremap.c
+++ b/components/lwp/ioremap.c
@@ -12,7 +12,7 @@
#include <ioremap.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <lwp_mm_area.h>
#include <lwp_mm.h>
diff --git a/components/lwp/lwp.c b/components/lwp/lwp.c
index 9e4dccd14a..672fb26536 100644
--- a/components/lwp/lwp.c
+++ b/components/lwp/lwp.c
@@ -36,10 +36,10 @@
#define DBG_LVL DBG_WARNING
#include <rtdbg.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <lwp_mm_area.h>
#include <lwp_user_mm.h>
-#endif /* end of RT_USING_USERSPACE */
+#endif /* end of ARCH_MM_MMU */
#ifndef O_DIRECTORY
@@ -120,7 +120,7 @@ void lwp_set_kernel_sp(uint32_t *sp)
uint32_t *lwp_get_kernel_sp(void)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
return (uint32_t *)rt_thread_self()->sp;
#else
uint32_t* kernel_sp;
@@ -138,7 +138,7 @@ uint32_t *lwp_get_kernel_sp(void)
#endif
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct process_aux *lwp_argscopy(struct rt_lwp *lwp, int argc, char **argv, char **envp)
{
int size = sizeof(size_t) * 5; /* store argc, argv, envp, aux, NULL */
@@ -389,7 +389,7 @@ typedef struct
Elf_Half st_shndx;
} Elf_sym;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct map_range
{
void *start;
@@ -506,7 +506,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
size_t rel_dyn_size = 0;
size_t dynsym_off = 0;
size_t dynsym_size = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct map_range user_area[2] = {{NULL, 0}, {NULL, 0}}; /* 0 is text, 1 is data */
void *pa, *va;
void *va_self;
@@ -555,7 +555,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
}
if ((eheader.e_type != ET_DYN)
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
&& (eheader.e_type != ET_EXEC)
#endif
)
@@ -565,7 +565,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
return -RT_ERROR;
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
{
off = eheader.e_phoff;
for (i = 0; i < eheader.e_phnum; i++, off += sizeof pheader)
@@ -601,7 +601,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
off = eheader.e_phoff;
process_header_size = eheader.e_phnum * sizeof pheader;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (process_header_size > ARCH_PAGE_SIZE - sizeof(char[16]))
{
LOG_E("process_header_size too big, size:0x%x!", process_header_size);
@@ -627,12 +627,12 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
lseek(fd, off, SEEK_SET);
read_len = load_fread(process_header, 1, process_header_size, fd);
check_read(read_len, process_header_size);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
rt_hw_cpu_dcache_ops(RT_HW_CACHE_FLUSH, process_header, process_header_size);
#endif
aux->item[1].key = AT_PAGESZ;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
aux->item[1].value = ARCH_PAGE_SIZE;
#else
aux->item[1].value = RT_MM_PAGE_SIZE;
@@ -641,7 +641,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
{
uint32_t random_value = rt_tick_get();
uint8_t *random;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
uint8_t *krandom;
random = (uint8_t *)(USER_VADDR_TOP - ARCH_PAGE_SIZE - sizeof(char[16]));
@@ -656,7 +656,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
aux->item[2].value = (size_t)random;
}
aux->item[3].key = AT_PHDR;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
aux->item[3].value = (size_t)va;
#else
aux->item[3].value = (size_t)process_header;
@@ -665,7 +665,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
aux->item[4].value = eheader.e_phnum;
aux->item[5].key = AT_PHENT;
aux->item[5].value = sizeof pheader;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
rt_hw_cpu_dcache_ops(RT_HW_CACHE_FLUSH, aux, sizeof *aux);
#endif
}
@@ -674,7 +674,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
{
load_off = (size_t)load_addr;
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
else
{
/* map user */
@@ -827,7 +827,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
check_off(pheader.p_offset, len);
lseek(fd, pheader.p_offset, SEEK_SET);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
{
uint32_t size = pheader.p_filesz;
size_t tmp_len = 0;
@@ -854,7 +854,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
if (pheader.p_filesz < pheader.p_memsz)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
uint32_t size = pheader.p_memsz - pheader.p_filesz;
uint32_t size_s;
uint32_t off;
@@ -941,7 +941,7 @@ static int load_elf(int fd, int len, struct rt_lwp *lwp, uint8_t *load_addr, str
read_len = load_fread(dynsym, 1, dynsym_size, fd);
check_read(read_len, dynsym_size);
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
arch_elf_reloc(m_info, (void *)load_off, rel_dyn_start, rel_dyn_size, got_start, got_size, dynsym);
#else
arch_elf_reloc((void *)load_off, rel_dyn_start, rel_dyn_size, got_start, got_size, dynsym);
@@ -1055,7 +1055,7 @@ void lwp_cleanup(struct rt_thread *tid)
tty_pop(&tty_head, lwp);
}
}
-
+
return;
}
@@ -1150,7 +1150,7 @@ pid_t lwp_execve(char *filename, int debug, int argc, char **argv, char **envp)
lwp_ref_dec(lwp);
return -ENOMEM;
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (lwp_user_space_init(lwp) != 0)
{
lwp_tid_put(tid);
@@ -1247,7 +1247,7 @@ pid_t lwp_execve(char *filename, int debug, int argc, char **argv, char **envp)
LOG_E("malloc fail!\n");
return -ENOMEM;
}
-
+
lwp->tty = tty;
lwp->tty->pgrp = lwp->__pgrp;
lwp->tty->session = lwp->session;
@@ -1271,7 +1271,7 @@ pid_t lwp_execve(char *filename, int debug, int argc, char **argv, char **envp)
LOG_E("malloc fail!\n");
return -ENOMEM;
}
-
+
lwp->tty = self_lwp->tty;
lwp->tty->pgrp = lwp->__pgrp;
lwp->tty->session = lwp->session;
diff --git a/components/lwp/lwp.h b/components/lwp/lwp.h
index da8ff0eef2..57230c9b70 100644
--- a/components/lwp/lwp.h
+++ b/components/lwp/lwp.h
@@ -29,7 +29,7 @@
#include "lwp_syscall.h"
#include "lwp_avl.h"
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include "lwp_shm.h"
#include "mmu.h"
@@ -59,7 +59,7 @@ extern "C" {
struct rt_lwp
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
rt_mmu_info mmu_info;
struct lwp_avl_struct *map_area;
size_t end_heap;
@@ -153,14 +153,14 @@ int lwp_execve(char *filename, int debug, int argc, char **argv, char **envp);
/*create by lwp_setsid.c*/
int setsid(void);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
void lwp_mmu_switch(struct rt_thread *thread);
#endif
void lwp_user_setting_save(rt_thread_t thread);
void lwp_user_setting_restore(rt_thread_t thread);
int lwp_setaffinity(pid_t pid, int cpu);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct __pthread {
/* Part 1 -- these fields may be external or
* * internal (accessed via asm) ABI. Do not change. */
diff --git a/components/lwp/lwp_arch_comm.h b/components/lwp/lwp_arch_comm.h
index 91b4a9523e..5bc317758c 100644
--- a/components/lwp/lwp_arch_comm.h
+++ b/components/lwp/lwp_arch_comm.h
@@ -23,7 +23,7 @@ void arch_syscall_exit();
void arch_ret_to_user();
/* ELF relocation */
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
void arch_elf_reloc(rt_mmu_info *m_info, void *text_start, void *rel_dyn_start, size_t rel_dyn_size, void *got_start, size_t got_size, void *dynsym);
#else
void arch_elf_reloc(void *text_start, void *rel_dyn_start, size_t rel_dyn_size, void *got_start, size_t got_size, void *dynsym);
diff --git a/components/lwp/lwp_futex.c b/components/lwp/lwp_futex.c
index ed03f43717..06462baf61 100644
--- a/components/lwp/lwp_futex.c
+++ b/components/lwp/lwp_futex.c
@@ -10,7 +10,7 @@
#include <rtthread.h>
#include <lwp.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <lwp_user_mm.h>
#endif
#include "sys/time.h"
@@ -188,7 +188,7 @@ int sys_futex(int *uaddr, int op, int val, const struct timespec *timeout,
return -RT_EINVAL;
}
- /**
+ /**
* if (op & (FUTEX_WAKE|FUTEX_FD|FUTEX_WAKE_BITSET|FUTEX_TRYLOCK_PI|FUTEX_UNLOCK_PI)) was TRUE
* `timeout` should be ignored by implementation, according to POSIX futex(2) manual.
* since only FUTEX_WAKE is implemented in rt-smart, only FUTEX_WAKE was omitted currently
diff --git a/components/lwp/lwp_mm_area.c b/components/lwp/lwp_mm_area.c
index 08ecf0684a..93f7c2a43c 100644
--- a/components/lwp/lwp_mm_area.c
+++ b/components/lwp/lwp_mm_area.c
@@ -9,7 +9,7 @@
*/
#include <rtthread.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <lwp_mm_area.h>
int lwp_map_area_insert(struct lwp_avl_struct **avl_tree, size_t addr, size_t size, int ma_type)
diff --git a/components/lwp/lwp_mm_area.h b/components/lwp/lwp_mm_area.h
index 555a03ce48..9fea5d49cb 100644
--- a/components/lwp/lwp_mm_area.h
+++ b/components/lwp/lwp_mm_area.h
@@ -15,7 +15,7 @@
#include <lwp_avl.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#ifdef __cplusplus
extern "C" {
diff --git a/components/lwp/lwp_pid.c b/components/lwp/lwp_pid.c
index 086a271e91..39d5e7f88c 100644
--- a/components/lwp/lwp_pid.c
+++ b/components/lwp/lwp_pid.c
@@ -22,7 +22,7 @@
#include "lwp_pid.h"
#include "tty.h"
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include "lwp_user_mm.h"
#endif
@@ -46,7 +46,7 @@ static pid_t current_pid = 0;
struct lwp_avl_struct *lwp_get_pid_ary(void)
{
- return lwp_pid_ary;
+ return lwp_pid_ary;
}
static pid_t lwp_pid_get(void)
@@ -418,7 +418,7 @@ void lwp_free(struct rt_lwp* lwp)
}
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
lwp_unmap_user_space(lwp);
#endif
diff --git a/components/lwp/lwp_pmutex.c b/components/lwp/lwp_pmutex.c
index bac99f2283..786b71c2b3 100644
--- a/components/lwp/lwp_pmutex.c
+++ b/components/lwp/lwp_pmutex.c
@@ -10,7 +10,7 @@
#include <rtthread.h>
#include <lwp.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <lwp_user_mm.h>
#endif
#include <sys/time.h>
diff --git a/components/lwp/lwp_shm.c b/components/lwp/lwp_shm.c
index a28e3161a9..135cff5c9c 100644
--- a/components/lwp/lwp_shm.c
+++ b/components/lwp/lwp_shm.c
@@ -10,7 +10,7 @@
#include <rthw.h>
#include <rtthread.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <lwp.h>
#include <lwp_shm.h>
#include <lwp_mm.h>
diff --git a/components/lwp/lwp_syscall.c b/components/lwp/lwp_syscall.c
index a3e2002851..56685bebba 100644
--- a/components/lwp/lwp_syscall.c
+++ b/components/lwp/lwp_syscall.c
@@ -17,7 +17,7 @@
#include <board.h>
#include <lwp.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <lwp_user_mm.h>
#include <lwp_arch.h>
#endif
@@ -44,7 +44,7 @@
#define SYSCALL_NET(f) SYSCALL_SIGN(sys_notimpl)
#endif
-#if defined(RT_USING_DFS) && defined(RT_USING_USERSPACE)
+#if defined(RT_USING_DFS) && defined(ARCH_MM_MMU)
#define SYSCALL_USPACE(f) f
#else
#define SYSCALL_USPACE(f) SYSCALL_SIGN(sys_notimpl)
@@ -451,7 +451,7 @@ void sys_exit_group(int status)
/* syscall: "read" ret: "ssize_t" args: "int" "void *" "size_t" */
ssize_t sys_read(int fd, void *buf, size_t nbyte)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
void *kmem = RT_NULL;
ssize_t ret = -1;
@@ -492,7 +492,7 @@ ssize_t sys_read(int fd, void *buf, size_t nbyte)
/* syscall: "write" ret: "ssize_t" args: "int" "const void *" "size_t" */
ssize_t sys_write(int fd, const void *buf, size_t nbyte)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
void *kmem = RT_NULL;
ssize_t ret = -1;
@@ -537,7 +537,7 @@ off_t sys_lseek(int fd, off_t offset, int whence)
/* syscall: "open" ret: "int" args: "const char *" "int" "..." */
int sys_open(const char *name, int flag, ...)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int ret = -1;
rt_size_t len = 0;
char *kname = RT_NULL;
@@ -590,7 +590,7 @@ int sys_ioctl(int fd, unsigned long cmd, void* data)
int sys_fstat(int file, struct stat *buf)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int ret = -1;
struct stat statbuff;
@@ -718,7 +718,7 @@ int sys_poll(struct pollfd *fds, nfds_t nfds, int timeout)
{
int ret = -1;
int i = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct pollfd *kfds = RT_NULL;
if (!lwp_user_accessable((void *)fds, nfds * sizeof *fds))
@@ -772,12 +772,12 @@ int sys_poll(struct pollfd *fds, nfds_t nfds, int timeout)
}
#endif /* RT_USING_MUSL */
return ret;
-#endif /* RT_USING_USERSPACE */
+#endif /* ARCH_MM_MMU */
}
int sys_select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int ret = -1;
fd_set *kreadfds = RT_NULL, *kwritefds = RT_NULL, *kexceptfds = RT_NULL;
@@ -876,7 +876,7 @@ quit:
int sys_unlink(const char *pathname)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int ret = -1;
rt_size_t len = 0;
char *kname = RT_NULL;
@@ -920,10 +920,10 @@ int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp)
if (!lwp_user_accessable((void *)rqtp, sizeof *rqtp))
return -EFAULT;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct timespec rqtp_k;
struct timespec rmtp_k;
-
+
lwp_get_from_user(&rqtp_k, (void *)rqtp, sizeof rqtp_k);
ret = nanosleep(&rqtp_k, &rmtp_k);
if ((ret != -1 || rt_get_errno() == EINTR) && rmtp && lwp_user_accessable((void *)rmtp, sizeof *rmtp))
@@ -946,7 +946,7 @@ int sys_nanosleep(const struct timespec *rqtp, struct timespec *rmtp)
/* syscall: "gettimeofday" ret: "int" args: "struct timeval *" "struct timezone *" */
int sys_gettimeofday(struct timeval *tp, struct timezone *tzp)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct timeval t_k;
if (tp)
@@ -1085,7 +1085,7 @@ rt_err_t sys_mutex_release(rt_mutex_t mutex)
return rt_mutex_release(mutex);
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
/* memory allocation */
rt_base_t sys_brk(void *addr)
{
@@ -1278,7 +1278,7 @@ rt_err_t sys_rt_timer_control(rt_timer_t timer, int cmd, void *arg)
rt_err_t sys_timer_create(clockid_t clockid, struct sigevent *restrict sevp, timer_t *restrict timerid)
{
int ret = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct sigevent sevp_k;
timer_t timerid_k;
struct sigevent evp_default;
@@ -1313,7 +1313,7 @@ rt_err_t sys_timer_settime(timer_t timerid, int flags,
struct itimerspec *restrict old_value)
{
int ret = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct itimerspec new_value_k;
struct itimerspec old_value_k;
@@ -1331,7 +1331,7 @@ rt_err_t sys_timer_settime(timer_t timerid, int flags,
rt_err_t sys_timer_gettime(timer_t timerid, struct itimerspec *curr_value)
{
int ret = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct itimerspec curr_value_k;
lwp_get_from_user(&curr_value_k, (void *)curr_value, sizeof curr_value_k);
@@ -1360,7 +1360,7 @@ rt_thread_t sys_thread_create(void *arg[])
lwp = rt_thread_self()->lwp;
lwp_ref_inc(lwp);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
user_stack = lwp_map_user(lwp, 0, (size_t)arg[3], 0);
if (!user_stack)
{
@@ -1421,7 +1421,7 @@ rt_thread_t sys_thread_create(void *arg[])
thread->user_stack = (void *)user_stack;
thread->user_stack_size = (uint32_t)arg[4];
rt_memset(thread->user_stack, '#', thread->user_stack_size);
-#endif /* RT_USING_USERSPACE */
+#endif /* ARCH_MM_MMU */
thread->lwp = (void*)lwp;
thread->tid = tid;
@@ -1613,7 +1613,7 @@ static int _copy_process(struct rt_lwp *dest_lwp, struct rt_lwp *src_lwp)
static void lwp_struct_copy(struct rt_lwp *dst, struct rt_lwp *src)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
dst->end_heap = src->end_heap;
#endif
dst->lwp_type = src->lwp_type;
@@ -1783,7 +1783,7 @@ int _sys_fork(void)
LOG_E("malloc fail!\n");
goto fail;
}
-
+
lwp->tty->foreground = lwp;
}
rt_hw_interrupt_enable(level);
@@ -2369,7 +2369,7 @@ int sys_execve(const char *path, char *const argv[], char *const envp[])
rt_pages_free(page, 0);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
_swap_lwp_data(lwp, new_lwp, rt_mmu_info, mmu_info);
_swap_lwp_data(lwp, new_lwp, struct lwp_avl_struct *, map_area);
_swap_lwp_data(lwp, new_lwp, size_t, end_heap);
@@ -2554,7 +2554,7 @@ void sys_hw_interrupt_enable(uint32_t level)
rt_hw_interrupt_enable(level);
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int sys_shmget(size_t key, size_t size, int create)
{
return lwp_shmget(key, size, create);
@@ -2891,13 +2891,13 @@ int sys_recvfrom(int socket, void *mem, size_t len, int flags,
struct musl_sockaddr *from, socklen_t *fromlen)
{
int flgs = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int ret = -1;
void *kmem = RT_NULL;
#endif
flgs = netflags_muslc_2_lwip(flags);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!len)
{
return -EINVAL;
@@ -2969,13 +2969,13 @@ int sys_sendto(int socket, const void *dataptr, size_t size, int flags,
const struct musl_sockaddr *to, socklen_t tolen)
{
int flgs = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int ret = -1;
void *kmem = RT_NULL;
#endif
flgs = netflags_muslc_2_lwip(flags);
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!size)
{
return -EINVAL;
@@ -3329,7 +3329,7 @@ int sys_thread_sighandler_set(int sig, lwp_sighandler_t func)
int32_t sys_waitpid(int32_t pid, int *status, int options)
{
int ret = -1;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!lwp_user_accessable((void *)status, sizeof(int)))
{
return -EFAULT;
@@ -3373,11 +3373,11 @@ int sys_getaddrinfo(const char *nodename,
char *k_nodename = NULL;
char *k_servname = NULL;
struct addrinfo *k_hints = NULL;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int err;
#endif
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!lwp_user_accessable((void *)res, sizeof(*res)))
{
SET_ERRNO(EFAULT);
@@ -3386,7 +3386,7 @@ int sys_getaddrinfo(const char *nodename,
#endif
if (nodename)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
lwp_user_strlen(nodename, &err);
if (err)
{
@@ -3403,7 +3403,7 @@ int sys_getaddrinfo(const char *nodename,
}
if (servname)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
lwp_user_strlen(servname, &err);
if (err)
{
@@ -3421,7 +3421,7 @@ int sys_getaddrinfo(const char *nodename,
if (hints)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!lwp_user_accessable((void *)hints, sizeof(*hints)))
{
SET_ERRNO(EFAULT);
@@ -3496,7 +3496,7 @@ int sys_gethostbyname2_r(const char *name, int af, struct hostent *ret,
char *k_name = NULL;
int a_err = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!lwp_user_accessable((void *)err, sizeof(*err)))
{
SET_ERRNO(EFAULT);
@@ -3605,7 +3605,7 @@ char *sys_getcwd(char *buf, size_t size)
int sys_chdir(const char *path)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int err = 0;
lwp_user_strlen(path, &err);
@@ -3623,7 +3623,7 @@ int sys_chdir(const char *path)
int sys_mkdir(const char *path, mode_t mode)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int err = 0;
lwp_user_strlen(path, &err);
@@ -3641,7 +3641,7 @@ int sys_mkdir(const char *path, mode_t mode)
int sys_rmdir(const char *path)
{
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int err = 0;
lwp_user_strlen(path, &err);
@@ -3675,7 +3675,7 @@ int sys_getdents(int fd, struct libc_dirent *dirp, size_t nbytes)
size_t rtt_nbytes = 0;
struct dirent *rtt_dirp;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!lwp_user_accessable((void *)dirp, sizeof(struct libc_dirent)))
{
return -EFAULT;
@@ -3732,7 +3732,7 @@ int sys_set_tid_address(int *tidptr)
{
rt_thread_t thread;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
if (!lwp_user_accessable((void *)tidptr, sizeof(int)))
{
return -EFAULT;
@@ -3752,7 +3752,7 @@ int sys_gettid(void)
int sys_access(const char *filename, int mode)
{
int ret = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
rt_size_t len = 0;
char *kname = RT_NULL;
int a_err = 0;
@@ -3802,7 +3802,7 @@ int sys_pipe(int fd[2])
int sys_clock_settime(clockid_t clk, const struct timespec *ts)
{
int ret = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
size_t size = sizeof(struct timespec);
struct timespec *kts = NULL;
@@ -3833,7 +3833,7 @@ int sys_clock_settime(clockid_t clk, const struct timespec *ts)
int sys_clock_gettime(clockid_t clk, struct timespec *ts)
{
int ret = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
size_t size = sizeof(struct timespec);
struct timespec *kts = NULL;
@@ -3870,7 +3870,7 @@ int sys_clock_nanosleep(clockid_t clk, int flags, const struct timespec *rqtp, s
if (!lwp_user_accessable((void *)rqtp, sizeof *rqtp))
return -EFAULT;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct timespec rqtp_k;
struct timespec rmtp_k;
@@ -3896,7 +3896,7 @@ int sys_clock_nanosleep(clockid_t clk, int flags, const struct timespec *rqtp, s
int sys_clock_getres(clockid_t clk, struct timespec *ts)
{
int ret = 0;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
struct timespec kts;
size_t size = sizeof(struct timespec);
@@ -3922,7 +3922,7 @@ int sys_clock_getres(clockid_t clk, struct timespec *ts)
int sys_rename(const char *oldpath, const char *newpath)
{
int ret = -1;
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
int err;
lwp_user_strlen(oldpath, &err);
@@ -4035,7 +4035,7 @@ int sys_getrandom(void *buf, size_t buflen, unsigned int flags)
return -EFAULT;
}
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
kmem = kmem_get(buflen);
if (!kmem)
{
@@ -4147,7 +4147,7 @@ int sys_sched_get_priority_max(int policy)
{
rt_set_errno(EINVAL);
return -rt_get_errno();
- }
+ }
return RT_THREAD_PRIORITY_MAX;
}
diff --git a/components/lwp/lwp_tid.c b/components/lwp/lwp_tid.c
index 0a77c5308c..0abf18e854 100644
--- a/components/lwp/lwp_tid.c
+++ b/components/lwp/lwp_tid.c
@@ -13,7 +13,7 @@
#include "lwp.h"
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include "lwp_user_mm.h"
#endif
diff --git a/components/lwp/lwp_user_mm.c b/components/lwp/lwp_user_mm.c
index 44e2a3a96a..97bfdc02b3 100644
--- a/components/lwp/lwp_user_mm.c
+++ b/components/lwp/lwp_user_mm.c
@@ -15,7 +15,7 @@
#include <rtthread.h>
#include <rthw.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <mmu.h>
#include <page.h>
@@ -390,7 +390,7 @@ void* lwp_mmap2(void *addr, size_t length, int prot,
if (d && d->vnode->type == FT_DEVICE)
{
struct dfs_mmap2_args mmap2;
-
+
mmap2.addr = addr;
mmap2.length = length;
mmap2.prot = prot;
diff --git a/components/lwp/lwp_user_mm.h b/components/lwp/lwp_user_mm.h
index 07cb27e722..a85173100e 100644
--- a/components/lwp/lwp_user_mm.h
+++ b/components/lwp/lwp_user_mm.h
@@ -14,7 +14,7 @@
#include <rthw.h>
#include <rtthread.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <lwp.h>
#include <lwp_mm_area.h>
diff --git a/components/lwp/page.c b/components/lwp/page.c
index 5dccd5fe34..e133d8fb10 100644
--- a/components/lwp/page.c
+++ b/components/lwp/page.c
@@ -12,7 +12,7 @@
#include <rthw.h>
#include <rtthread.h>
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
#include <page.h>
#include <mmu.h>
diff --git a/components/lwp/page.h b/components/lwp/page.h
index 8b65299d91..242cbdfa2d 100644
--- a/components/lwp/page.h
+++ b/components/lwp/page.h
@@ -11,7 +11,7 @@
#ifndef __PAGE_H__
#define __PAGE_H__
-#ifdef RT_USING_USERSPACE
+#ifdef ARCH_MM_MMU
typedef struct tag_region
{