Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-15 Thread via GitHub
xiaoxiang781216 merged PR #11165: URL: https://github.com/apache/nuttx/pull/11165 -- 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:

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-15 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1393798174 ## sched/pthread/pthread_condclockwait.c: ## @@ -104,7 +105,7 @@ int pthread_cond_clockwait(FAR pthread_cond_t *cond, else if (!abstime) { - ret

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1393736227 ## sched/pthread/pthread_condclockwait.c: ## @@ -104,7 +105,7 @@ int pthread_cond_clockwait(FAR pthread_cond_t *cond, else if (!abstime) { - ret =

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1393601024 ## sched/pthread/pthread_condclockwait.c: ## @@ -104,7 +105,7 @@ int pthread_cond_clockwait(FAR pthread_cond_t *cond, else if (!abstime) { - ret

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1393167474 ## sched/pthread/pthread_condclockwait.c: ## @@ -104,7 +105,7 @@ int pthread_cond_clockwait(FAR pthread_cond_t *cond, else if (!abstime) { - ret =

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1393167474 ## sched/pthread/pthread_condclockwait.c: ## @@ -104,7 +105,7 @@ int pthread_cond_clockwait(FAR pthread_cond_t *cond, else if (!abstime) { - ret =

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1392939538 ## sched/pthread/pthread_condclockwait.c: ## @@ -104,7 +105,7 @@ int pthread_cond_clockwait(FAR pthread_cond_t *cond, else if (!abstime) { - ret

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1392930328 ## include/nuttx/tls.h: ## @@ -309,9 +315,28 @@ uintptr_t task_tls_get_value(int tlsindex); #elif defined(CONFIG_TLS_ALIGNED) && !defined(__KERNEL__) Review

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1392193610 ## include/nuttx/tls.h: ## @@ -309,9 +315,28 @@ uintptr_t task_tls_get_value(int tlsindex); #elif defined(CONFIG_TLS_ALIGNED) && !defined(__KERNEL__) Review Comment:

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-14 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1392193610 ## include/nuttx/tls.h: ## @@ -309,9 +315,28 @@ uintptr_t task_tls_get_value(int tlsindex); #elif defined(CONFIG_TLS_ALIGNED) && !defined(__KERNEL__) Review Comment:

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1391471383 ## sched/pthread/pthread_condclockwait.c: ## @@ -104,7 +105,7 @@ int pthread_cond_clockwait(FAR pthread_cond_t *cond, else if (!abstime) { - ret =

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1391460655 ## sched/tls/tls_initinfo.c: ## @@ -22,9 +22,13 @@ * Included Files / +#include +

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1391459966 ## sched/task/task_setcanceltype.c: ## @@ -52,77 +52,3 @@ * / Review Comment: Oops,

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1391341383 ## include/nuttx/tls.h: ## @@ -206,6 +206,12 @@ struct tls_info_s struct pthread_cleanup_s tl_stack[CONFIG_PTHREAD_CLEANUP_STACKSIZE]; #endif + uint8_t

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1391172544 ## sched/tls/tls_initinfo.c: ## @@ -66,5 +70,17 @@ int tls_init_info(FAR struct tcb_s *tcb) /* Attach per-task info in group to TLS */ info->tl_task =

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on PR #11165: URL: https://github.com/apache/nuttx/pull/11165#issuecomment-1807967384 > @pussuw what are the pros and cons of moving the cancellation points to user space/libc ? @acassis My primary concern and motivation for doing these changes is to improve

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390941495 ## libs/libc/sched/CMakeLists.txt: ## @@ -26,11 +26,11 @@ set(SRCS clock_timespec_add.c clock_timespec_subtract.c clock_getcpuclockid.c -

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390939391 ## include/nuttx/tls.h: ## @@ -205,6 +205,12 @@ struct tls_info_s struct pthread_cleanup_s stack[CONFIG_PTHREAD_CLEANUP_STACKSIZE]; Review Comment: Ok --

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390938982 ## include/nuttx/tls.h: ## @@ -309,9 +315,28 @@ uintptr_t task_tls_get_value(int tlsindex); #elif defined(CONFIG_TLS_ALIGNED) && !defined(__KERNEL__) Review Comment:

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390933827 ## sched/tls/tls_initinfo.c: ## @@ -66,5 +70,17 @@ int tls_init_info(FAR struct tcb_s *tcb) /* Attach per-task info in group to TLS */ info->tl_task =

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390933549 ## include/nuttx/tls.h: ## @@ -205,6 +205,12 @@ struct tls_info_s struct pthread_cleanup_s stack[CONFIG_PTHREAD_CLEANUP_STACKSIZE]; #endif + uint8_t tl_cpstate;

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390933131 ## libs/libc/sched/task_cancelpt.c: ## @@ -0,0 +1,289 @@ +/ + *

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-13 Thread via GitHub
pussuw commented on PR #11165: URL: https://github.com/apache/nuttx/pull/11165#issuecomment-1807897534 > > @pkarashchenko @patacongo You might be interested in this. Also, do you mind if I remove the nested cancellation point logic now as well ? > > That is something I had planned to

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-11 Thread via GitHub
patacongo commented on PR #11165: URL: https://github.com/apache/nuttx/pull/11165#issuecomment-1806995884 > @pkarashchenko @patacongo You might be interested in this. Also, do you mind if I remove the nested cancellation point logic now as well ? That is something I had planned to do

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-11 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390225032 ## include/nuttx/tls.h: ## @@ -205,6 +205,12 @@ struct tls_info_s struct pthread_cleanup_s stack[CONFIG_PTHREAD_CLEANUP_STACKSIZE]; #endif + uint8_t

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-11 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390200245 ## libs/libc/sched/CMakeLists.txt: ## @@ -26,11 +26,11 @@ set(SRCS clock_timespec_add.c clock_timespec_subtract.c clock_getcpuclockid.c -

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-11 Thread via GitHub
xiaoxiang781216 commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1390199104 ## include/nuttx/tls.h: ## @@ -309,9 +315,28 @@ uintptr_t task_tls_get_value(int tlsindex); #elif defined(CONFIG_TLS_ALIGNED) && !defined(__KERNEL__) Review

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-10 Thread via GitHub
acassis commented on PR #11165: URL: https://github.com/apache/nuttx/pull/11165#issuecomment-1806267343 @pussuw what are the pros and cons of moving the cancellation points to user space/libc ? -- This is an automated message from the Apache Git Service. To respond to the message, please

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-10 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1389263469 ## libs/libc/sched/task_setcanceltype.c: ## @@ -46,14 +54,70 @@ int task_setcanceltype(int type, FAR int *oldtype) { + FAR struct tls_info_s *tls = tls_get_info();

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-10 Thread via GitHub
pussuw commented on code in PR #11165: URL: https://github.com/apache/nuttx/pull/11165#discussion_r1389261277 ## include/nuttx/tls.h: ## @@ -309,9 +315,28 @@ uintptr_t task_tls_get_value(int tlsindex); #elif defined(CONFIG_TLS_ALIGNED) && !defined(__KERNEL__) Review Comment:

Re: [PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-10 Thread via GitHub
pussuw commented on PR #11165: URL: https://github.com/apache/nuttx/pull/11165#issuecomment-1805515910 @pkarashchenko @patacongo You might be interested in this. Also, do you mind if I remove the nested cancellation point logic now as well ? -- This is an automated message from the

[PR] task/pthread_cancelpt: Move cancel point handling to libc, data to TLS [nuttx]

2023-11-10 Thread via GitHub
pussuw opened a new pull request, #11165: URL: https://github.com/apache/nuttx/pull/11165 ## Summary This moves task / thread cancel point logic from the NuttX kernel into libc, while the data needed by the cancel point logic is moved to TLS. Why do it ? The change is an