WORK_ST_IDLE
[WORK_ST_IDLE] = WORK_ST_TASK, /* start queuing task */
case WORK_ST_IDLE:
[WORK_ST_IDLE] = WORK_ST_TIMER, /* start timeout */
case WORK_ST_IDLE:
[WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */
[WORK_ST_EXEC] = WORK_ST_IDLE, /* complete callback */
[WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */
[WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */
[WORK_ST_TASK] = WORK_ST_IDLE, /* cancel */
[WORK_ST_CANCEL] = WORK_ST_IDLE, /* can't happen */
[WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */
[WORK_ST_TASK] = WORK_ST_IDLE, /* cancel and drain */
[WORK_ST_EXEC] = WORK_ST_IDLE, /* too late, drain */
[WORK_ST_CANCEL] = WORK_ST_IDLE, /* cancel and drain */
case WORK_ST_IDLE:
[WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */
WORK_ST_CANCEL, WORK_ST_IDLE);
WORK_ST_CANCEL, WORK_ST_IDLE);
[WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */
[WORK_ST_TIMER] = WORK_ST_IDLE, /* cancel and drain */
[WORK_ST_TASK] = WORK_ST_IDLE, /* cancel and drain */
[WORK_ST_EXEC] = WORK_ST_IDLE, /* too late, drain */
[WORK_ST_CANCEL] = WORK_ST_IDLE, /* cancel and drain */
case WORK_ST_IDLE:
case WORK_ST_IDLE:
case WORK_ST_IDLE:
case WORK_ST_IDLE: