You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by "masayuki2009 (via GitHub)" <gi...@apache.org> on 2023/08/13 10:41:41 UTC

[GitHub] [nuttx] masayuki2009 commented on pull request #9755: sched/task/fork: add fork implementation

masayuki2009 commented on PR #9755:
URL: https://github.com/apache/nuttx/pull/9755#issuecomment-1676315276

   @extinguish 
   
   I noticed that vfork_test is not executed now since the ostest still uses CONFIG_ARCH_HAVE_VFORK.
   So I tried to change CONFIG_ARCH_HAVE_VFORK to CONFIG_ARCH_HAVE_FORK in the apps and tested some configurations and found that ostest crashes with qemu-armv8a:nsh 
   
   ```
   user_main: vfork() test
   nxtask_setup_fork: Child priority=100 start=0x402aa570
   nxtask_setup_fork: parent=0x40350f30, returning child=0x403557e0
   nxtask_start_fork: Starting Child TCB=0x403557e0
   arm64_fatal_error: reason = 0
   arm64_fatal_error: CurrentEL: MODE_EL1
   arm64_fatal_error: ESR_ELn: 0x1fe00000
   arm64_fatal_error: FAR_ELn: 0x40353300
   arm64_fatal_error: ELR_ELn: 0x4028e700
   print_ec_cause: Trapped access to SVE, Advanced SIMD, or floating-point functionality
   _assert: Current Version: NuttX  12.0.0 c33d1c9c97 Aug 13 2023 19:32:34 arm64
   _assert: Assertion failed panic: at file: common/arm64_fatal.c:375 task: ostest 0x4029e288
   up_dump_register: stack = 0x403573a0
   up_dump_register: x0:   0x0                 x1:   0xdeaddeaddeaddead
   up_dump_register: x2:   0xdeaddeaddeaddead  x3:   0xdeaddeaddeaddead
   up_dump_register: x4:   0xdeaddeaddeaddead  x5:   0xdeaddeaddeaddead
   up_dump_register: x6:   0xdeaddeaddeaddead  x7:   0xdeaddeaddeaddead
   up_dump_register: x8:   0x40353320          x9:   0x0
   up_dump_register: x10:  0x402af6eb          x11:  0x0
   up_dump_register: x12:  0x0                 x13:  0x0
   up_dump_register: x14:  0x0                 x15:  0x0
   up_dump_register: x16:  0x4028b58c          x17:  0x0
   up_dump_register: x18:  0x0                 x19:  0x40353300
   up_dump_register: x20:  0x402c31d0          x21:  0x402b9250
   up_dump_register: x22:  0x40351610          x23:  0x402b171f
   up_dump_register: x24:  0x40351656          x25:  0x0
   up_dump_register: x26:  0x0                 x27:  0x0
   up_dump_register: x28:  0x0                 x29:  0x0
   up_dump_register: x30:  0x40353300
   up_dump_register:
   up_dump_register: STATUS Registers:
   up_dump_register: SPSR:      0x5
   up_dump_register: ELR:       0x40353300
   up_dump_register: SP_EL0:    0x40357380
   up_dump_register: SP_ELX:    0x403573a0
   up_dump_register: TPIDR_EL0: 0x403557e0
   up_dump_register: TPIDR_EL1: 0x403557e0
   up_dump_register: EXE_DEPTH: 0x0
   dump_tasks:    PID GROUP PRI POLICY   TYPE    NPX STATE   EVENT      SIGMASK          STACKBASE  STACKSIZE      USED   FILLED    COMMAND
   dump_tasks:   ----   --- --- -------- ------- --- ------- ---------- -------- 0x402c5000      4096      1824    44.5%    irq
   dump_task:       0     0   0 FIFO     Kthread N-- Ready              0000000000000000 0x402c6030      8144      1568    19.2%    Idle Task
   dump_task:       1     1 192 RR       Kthread --- Waiting Semaphore  0000000000000000 0x402c9c30      8096      1184    14.6%    hpwork 0x402c29b0
   dump_task:       2     2 100 RR       Task    --- Waiting Semaphore  0000000000000000 0x402cc270      8112      3008    37.0%    nsh_main
   dump_task:       3     3 100 RR       Task    --- Waiting Semaphore  0000000000000000 0x4034ef00      8112      1696    20.9%    ostest
   dump_task:       4     4 100 RR       Task    --- Waiting Semaphore  0000000000000000 0x40351660      8064      3408    42.2%    ostest Arg1 Arg2 Arg3 Arg4
   dump_task:     218   218 100 RR       Task    --- Running            0000000000000000 0x40355a10      8064      3472    43.0%    ostest Arg1 Arg2 Arg3 Arg4
   ```
   
   The crash did not happen before merging this PR.
   So, could you confirm what is happening with the config?
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org