diff --git a/Ansible/update.yaml b/Ansible/update.yaml
index 136b095f64416d862b4d48e9c8515ef71d1c46cb..b6eb489053242dab1a9ffab62d7715eea37239ac 100644
--- a/Ansible/update.yaml
+++ b/Ansible/update.yaml
@@ -96,7 +96,8 @@
         - name: Apply system patches
           command: syspatch
           register: syspatch
-          changed_when: syspatch.stdout_lines|length > 0
+          changed_when: syspatch.rc == 0
+          failed_when: syspatch.rc not in [0,2]
 
         - name: Update packages
           community.general.openbsd_pkg:
@@ -107,7 +108,8 @@
         - name: Update firmware
           command: fw_update -a
           register: fw_update
-          changed_when: fw_update.stdout_lines|length > 0
+          changed_when: |-
+            "fw_update: added none; updated none;" not in fw_update.stdout
 
         - name: Set reboot needed fact
           set_fact: