1. Suppose you're tracing task t with engine e, and
e->ops->report_quiesce is non-NULL.  Will utrace ever call
e->ops->report_quiesce from a task other than t?  If so, under what
circumstances?

2. Suppose some thread t2 (t != t2) does:
  A:
        utrace_set_events(t, e, UTRACE_EVENT(QUIESCE));
  B:
        result = utrace_control(t, e, UTRACE_STOP);
  C:
Suppose t was already stopped at point A, and remains stopped
through point C.  My understanding is that e->ops->report_quiesce
will get called before t returns to user space (but only from t,
not t2).  Is that correct?

(I ask partly because in previous versions of utrace, calling
utrace_set_flags(t, e, UTRACE_ACTION_QUIESCE | UTRACE_EVENT(QUIESCE))
from t2 could yield a call to e->ops->report_quiesce from t2.)

Thanks.
Jim


Reply via email to