lisa.analysis.tasks: Catch empty task_state df's
lisa.analysis.tasks: Catch empty task_state df's

Running trace.analysis.plot_tasks_activation() on a recent integration
trace yields:

  lisa/lisa/analysis/tasks.py in df_task_states(self, task, stringify)
      459         """
      460         tasks_df = list(self._df_tasks_states(tasks=[task]))
  --> 461         task_id, task_df = tasks_df[0]
      462         task_df = task_df.drop(columns=["pid", "comm"])
      463
  IndexError: list index out of range

It turns out that the task causing this exception *is* present in the
trace, and has associated sched_switch / sched_wakeup events, but is
eclipsed by the TraceView slice done on the downstream TestBundle.

Catch empty state df's in df_task_states(). Silently skip unplottable tasks
in plot_tasks_activation().

ARM-software/lisa,ARM-software/lisa,credp/lisa,ARM-software/lisa,credp/lisa,ARM-software/lisa,credp/lisa,credp/lisa