casaroli commented on code in PR #20130:
URL: https://github.com/apache/nuttx/pull/20130#discussion_r4004773868
##########
sched/signal/sig_notification.c:
##########
@@ -70,7 +74,22 @@ static void nxsig_notification_worker(FAR void *arg)
/* Perform the callback */
- work->func(work->value);
+#ifdef CONFIG_FDPIC
+ /* The worker does not carry the module's data base. Install the base
+ * captured at registration around the call. A zero base means the
+ * callback is not a module's.
+ */
+
+ if (work->got != 0)
+ {
+ fdpic_invoke((uintptr_t)work->value.sival_ptr, (uintptr_t)work->func,
Review Comment:
because `nxsig_notification()` does not run in the module's context. it is
called by drivers, `timer_settime()` or `mq_sndinternal()`. `mq_notify()` and
`timer_create()` run in the module context, so those were fixed now.
--
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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]