소스 검색

aio stack size设置改为使用kconfig配置

shaojinchun 4 년 전
부모
커밋
4b626f60ec
4개의 변경된 파일8개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 0
      bsp/raspberry-pi/raspi4-64/.config
  2. 1 0
      bsp/raspberry-pi/raspi4-64/rtconfig.h
  3. 5 0
      components/libc/Kconfig
  4. 1 1
      components/libc/aio/posix_aio.c

+ 1 - 0
bsp/raspberry-pi/raspi4-64/.config

@@ -215,6 +215,7 @@ CONFIG_RT_USING_POSIX_MMAP=y
 CONFIG_RT_USING_POSIX_TERMIOS=y
 # CONFIG_RT_USING_POSIX_GETLINE is not set
 CONFIG_RT_USING_POSIX_AIO=y
+CONFIG_RT_POSIX_AIO_THREAD_STACK_SIZE=8192
 CONFIG_RT_USING_POSIX_CLOCKTIME=y
 # CONFIG_RT_USING_MODULE is not set
 

+ 1 - 0
bsp/raspberry-pi/raspi4-64/rtconfig.h

@@ -138,6 +138,7 @@
 #define RT_USING_POSIX_MMAP
 #define RT_USING_POSIX_TERMIOS
 #define RT_USING_POSIX_AIO
+#define RT_POSIX_AIO_THREAD_STACK_SIZE 8192
 #define RT_USING_POSIX_CLOCKTIME
 
 /* Network */

+ 5 - 0
components/libc/Kconfig

@@ -53,6 +53,11 @@ if RT_USING_LIBC && RT_USING_DFS
         bool "Enable AIO"
         default n
 
+    config RT_POSIX_AIO_THREAD_STACK_SIZE
+        int "Set posix aio thread stack size"
+        default 2048
+        depends on RT_USING_POSIX_AIO
+
     config RT_USING_POSIX_CLOCKTIME
         bool "Enable POSIX clock_time APIs"
         default n

+ 1 - 1
components/libc/aio/posix_aio.c

@@ -457,7 +457,7 @@ int lio_listio(int mode, struct aiocb * const list[], int nent,
 
 int aio_system_init(void)
 {
-    aio_queue = rt_workqueue_create("aio", 8192, RT_THREAD_PRIORITY_MAX/2);
+    aio_queue = rt_workqueue_create("aio", RT_POSIX_AIO_THREAD_STACK_SIZE, RT_THREAD_PRIORITY_MAX / 2);
     RT_ASSERT(aio_queue != NULL);
 
     return 0;