static int max_wait_timeout = DEFAULT_MAX_WAIT_SECOND;
static GQueue *transition_queue;
static struct {
- uint64_t id;
+ uint64_t wait_callback_id;
int ongoing;
struct syscommon_plugin_deviced_power_trans_info ti;
GList *waitings;
struct change_state_wait {
struct proc_info *pi;
- guint64 transition_id;
+ guint64 wait_callback_id;
int state;
};
{
struct change_state_wait *csw = (struct change_state_wait *) data;
- _E("%s(pid=%d) hasn't confirmed id=%"PRIu64"(%s)",
- csw->pi->comm, csw->pi->pid, csw->transition_id, state_name(csw->state));
+ _E("%s(pid=%d) hasn't confirmed wait_callback_id=%"PRIu64"(%s)",
+ csw->pi->comm, csw->pi->pid, csw->wait_callback_id, state_name(csw->state));
if (kill(csw->pi->pid, 0) != 0) {
_E("cleanup not existing process: %s(pid=%d)", csw->pi->comm, csw->pi->pid);
const struct change_state_wait *csw = (const struct change_state_wait *) data;
const struct change_state_wait *target = (const struct change_state_wait *) udata;
- if (csw->pi->pid == target->pi->pid && csw->transition_id == target->transition_id)
+ if (csw->pi->pid == target->pi->pid && csw->wait_callback_id == target->wait_callback_id)
return 0;
return -1;
}
-static int handle_change_state_wait(pid_t pid, guint64 transition_id, int transition_cancel)
+static int handle_change_state_wait(pid_t pid, guint64 wait_callback_id, int transition_cancel)
{
struct proc_info target_pi = { .pid = pid };
- struct change_state_wait target_csw = { .pi = &target_pi, .transition_id = transition_id };
+ struct change_state_wait target_csw = {
+ .pi = &target_pi,
+ .wait_callback_id = wait_callback_id
+ };
struct change_state_wait *csw = NULL;
GList *l = NULL;
return 0;
csw = l->data;
- if (transition_cancel == TRANSITION_CANCEL)
- CRITICAL_LOG("pid=%d(%s) cancelled id=%"PRIu64"(%s)", csw->pi->pid, csw->pi->comm, csw->transition_id, state_name(csw->state));
- else
- _D("pid=%d(%s) confirmed id=%"PRIu64"(%s)", csw->pi->pid, csw->pi->comm, csw->transition_id, state_name(csw->state));
+ if (transition_cancel == TRANSITION_CANCEL) {
+ CRITICAL_LOG("pid=%d(%s) cancelled wait_callback_id=%"PRIu64"(%s)",
+ csw->pi->pid, csw->pi->comm, csw->wait_callback_id, state_name(csw->state));
+ } else {
+ _D("pid=%d(%s) confirmed wait_callback_id=%"PRIu64"(%s)",
+ csw->pi->pid, csw->pi->comm, csw->wait_callback_id, state_name(csw->state));
+ }
transition_context.waitings = g_list_remove_link(transition_context.waitings, l);
free(g_steal_pointer(&l->data));
return 0;
}
-int confirm_change_state_wait(pid_t pid, guint64 transition_id)
+int confirm_change_state_wait(pid_t pid, guint64 wait_callback_id)
{
- return handle_change_state_wait(pid, transition_id, TRANSITION_CONFIRM);
+ return handle_change_state_wait(pid, wait_callback_id, TRANSITION_CONFIRM);
}
-int cancel_change_state_wait(pid_t pid, guint64 transition_id)
+int cancel_change_state_wait(pid_t pid, guint64 wait_callback_id)
{
/* do not allow cancelling poweroff transition */
if (is_poweroff_state(transition_context.ti.next))
- return handle_change_state_wait(pid, transition_id, TRANSITION_CONFIRM);
+ return handle_change_state_wait(pid, wait_callback_id, TRANSITION_CONFIRM);
transition_context.cancel = 1;
- return handle_change_state_wait(pid, transition_id, TRANSITION_CANCEL);
+ return handle_change_state_wait(pid, wait_callback_id, TRANSITION_CANCEL);
}
static uint64_t alloc_unique_id(void)
g_variant_new("(ttti)",
mapping_device_state[curr],
mapping_device_state[next],
- transition_context.id,
+ transition_context.wait_callback_id,
transition_context.ti.reason));
}
*csw = (struct change_state_wait) {
.pi = pi,
- .transition_id = transition_context.id,
+ .wait_callback_id = transition_context.wait_callback_id,
.state = waiting_state,
};
assert(current != DEVICED_POWER_STATE_EXIT);
assert(transition_context.max_wait_timer == 0);
- transition_context.id = alloc_unique_id();
+ transition_context.wait_callback_id = alloc_unique_id();
if (!transition_context.ongoing) {
// hold secondary wakelock not to fall asleep during transition