diff --git a/scripts/gnt-job b/scripts/gnt-job
index 80dbfd8b8bb530d6592029c1f0199a2689d6709c..8924c3edd7b7586381fd9b9760e3c176d3ef1c5e 100755
--- a/scripts/gnt-job
+++ b/scripts/gnt-job
@@ -176,13 +176,17 @@ def CancelJobs(opts, args):
 
   """
   client = GetClient()
+  result = constants.EXIT_SUCCESS
 
   for job_id in args:
-    (_, msg) = client.CancelJob(job_id)
+    (success, msg) = client.CancelJob(job_id)
+
+    if not success:
+      result = constants.EXIT_FAILURE
+
     ToStdout(msg)
 
-  # TODO: Different exit value if not all jobs were canceled?
-  return 0
+  return result
 
 
 def ShowJobs(opts, args):