@@ -262,12 +262,12 @@ int scheduler_dp_task_init(struct task **task,
262262 /* success, fill the structures */
263263 pdata -> p_stack = p_stack ;
264264 pdata -> mod = mod ;
265- * task = & task_memory -> task ;
266265
267266 /* create a zephyr thread for the task */
268267 pdata -> thread_id = k_thread_create (pdata -> thread , (__sparse_force void * )p_stack ,
269- stack_size , dp_thread_fn , * task , NULL , NULL ,
270- CONFIG_DP_THREAD_PRIORITY , (* task )-> flags , K_FOREVER );
268+ stack_size , dp_thread_fn , & task_memory -> task , NULL , NULL ,
269+ CONFIG_DP_THREAD_PRIORITY , task_memory -> task .flags ,
270+ K_FOREVER );
271271
272272 k_thread_access_grant (pdata -> thread_id , pdata -> event );
273273 scheduler_dp_grant (pdata -> thread_id , cpu_get_id ());
@@ -280,7 +280,7 @@ int scheduler_dp_task_init(struct task **task,
280280 }
281281
282282#ifdef CONFIG_USERSPACE
283- if (( * task ) -> flags & K_USER ) {
283+ if (task_memory -> task . flags & K_USER ) {
284284 ret = user_memory_init_shared (pdata -> thread_id , pdata -> mod );
285285 if (ret < 0 ) {
286286 tr_err (& dp_tr , "user_memory_init_shared() failed" );
@@ -293,6 +293,8 @@ int scheduler_dp_task_init(struct task **task,
293293 k_event_init (pdata -> event );
294294 k_thread_start (pdata -> thread_id );
295295
296+ /* success, fill output parameter */
297+ * task = & task_memory -> task ;
296298 return 0 ;
297299
298300e_thread :
0 commit comments