diff --git a/wa/framework/execution.py b/wa/framework/execution.py
index c38ed53b..ba322aae 100644
--- a/wa/framework/execution.py
+++ b/wa/framework/execution.py
@@ -455,8 +455,7 @@ class Runner(object):
             while self.context.job_queue:
                 if self.context.run_interrupted:
                     raise KeyboardInterrupt()
-                with signal.wrap('JOB_EXECUTION', self, self.context):
-                    self.run_next_job(self.context)
+                self.run_next_job(self.context)
 
         except KeyboardInterrupt as e:
             log.log_error(e, self.logger)
@@ -551,8 +550,7 @@ class Runner(object):
             job.configure_target(context)
 
         try:
-            with signal.wrap('JOB_SETUP', self, context):
-                job.setup(context)
+            job.setup(context)
         except Exception as e:
             job.set_status(Status.FAILED)
             log.log_error(e, self.logger)
@@ -564,8 +562,7 @@ class Runner(object):
         try:
 
             try:
-                with signal.wrap('JOB_EXECUTION', self, context):
-                    job.run(context)
+                job.run(context)
             except KeyboardInterrupt:
                 context.run_interrupted = True
                 job.set_status(Status.ABORTED)
@@ -597,8 +594,7 @@ class Runner(object):
         finally:
             # If setup was successfully completed, teardown must
             # run even if the job failed
-            with signal.wrap('JOB_TEARDOWN', self):
-                job.teardown(context)
+            job.teardown(context)
 
     def check_job(self, job):
         rc = self.context.cm.run_config
diff --git a/wa/framework/signal.py b/wa/framework/signal.py
index c69fd83b..8451956b 100644
--- a/wa/framework/signal.py
+++ b/wa/framework/signal.py
@@ -151,23 +151,11 @@ BEFORE_JOB_TARGET_CONFIG = Signal('before-job-target-config', invert_priority=Tr
 SUCCESSFUL_JOB_TARGET_CONFIG = Signal('successful-job-target-config')
 AFTER_JOB_TARGET_CONFIG = Signal('after-job-target-config')
 
-BEFORE_JOB_SETUP = Signal('before-job-setup', invert_priority=True)
-SUCCESSFUL_JOB_SETUP = Signal('successful-job-setup')
-AFTER_JOB_SETUP = Signal('after-job-setup')
-
-BEFORE_JOB_EXECUTION = Signal('before-job-execution', invert_priority=True)
-SUCCESSFUL_JOB_EXECUTION = Signal('successful-job-execution')
-AFTER_JOB_EXECUTION = Signal('after-job-execution')
-
 BEFORE_JOB_OUTPUT_PROCESSED = Signal('before-job-output-processed',
                                      invert_priority=True)
 SUCCESSFUL_JOB_OUTPUT_PROCESSED = Signal('successful-job-output-processed')
 AFTER_JOB_OUTPUT_PROCESSED = Signal('after-job-output-processed')
 
-BEFORE_JOB_TEARDOWN = Signal('before-job-teardown', invert_priority=True)
-SUCCESSFUL_JOB_TEARDOWN = Signal('successful-job-teardown')
-AFTER_JOB_TEARDOWN = Signal('after-job-teardown')
-
 BEFORE_FLASHING = Signal('before-flashing', invert_priority=True)
 SUCCESSFUL_FLASHING = Signal('successful-flashing')
 AFTER_FLASHING = Signal('after-flashing')