SPRESENSE opened a new issue, #11236:
URL: https://github.com/apache/nuttx/issues/11236

   This pull request https://github.com/apache/nuttx/pull/11165 causes the task 
to fail to delete.
   
   There is a gnss sensor driver, which creates a task with `open()` and 
deletes it with `close()`.
   
[nuttx/boards/arm/cxd56xx/drivers/sensors/cxd5610_gnss.c](https://github.com/apache/nuttx/blob/master/boards/arm/cxd56xx/drivers/sensors/cxd5610_gnss.c)
   
   ```
   open()
    -> cxd5610_gnss_open()
     -> cxd5610_gnss_initialize()
      -> task_spawn()
   
   close()
    -> cxd5610_gnss_close()
     -> cxd5610_gnss_finalize()
      -> nxtask_delete()
   ```
   
   In `nxtask_delete()` function, `nxnotify_cancellation()` returns `true` and 
`nxtask_terminate()` is not executed.
   
https://github.com/apache/nuttx/blob/11b3adf17fd4e252d880bd9f4dcab54e42e990fe/sched/task/task_delete.c#L123-L134
   
   In `nxnotify_cancellation()` function, the cancellation is pending under the 
following conditions.
   
https://github.com/apache/nuttx/blob/11b3adf17fd4e252d880bd9f4dcab54e42e990fe/sched/task/task_cancelpt.c#L106-L127
   
   This was correctly deleting tasks before the pull request 
https://github.com/apache/nuttx/pull/11165.
   
   I would appreciate any advice.
   
   Thanks.
   


-- 
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-unsubscr...@nuttx.apache.org.apache.org

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

Reply via email to