Introduce __task_get_new_tid_field(), that provides the tid to be used
for a task.
For shared task, to mark temporary ownership of a task, instead of -1,
the tid will be set to -2-tid, tid being the tid of the current thread.
#endif
}
+static inline int __task_get_new_tid_field(int curtid)
+{
+ if (curtid >= 0 || curtid < -1)
+ return curtid;
+ return -2 - tid;
+}
+
/* puts the task <t> in run queue with reason flags <f>, and returns <t> */
/* This will put the task in the local runqueue if the task is only runnable
* by the current thread, in the global runqueue otherwies. With DEBUG_TASK,