diff --git a/attn/attn_handler.cpp b/attn/attn_handler.cpp
index 3e51f57..b8181b8 100644
--- a/attn/attn_handler.cpp
+++ b/attn/attn_handler.cpp
@@ -103,6 +103,8 @@
                 ss << "target - " << path;
                 trace<level::INFO>(ss.str().c_str());
 
+                isr_val = 0xffffffff; // invalid isr value
+
                 // get active attentions on processor
                 if (RC_SUCCESS != fsi_read(attnTarget, 0x1007, &isr_val))
                 {
@@ -110,6 +112,11 @@
                     trace<level::INFO>("Error! cfam read 0x1007 FAILED");
                     eventAttentionFail(RC_CFAM_ERROR);
                 }
+                else if (0xffffffff == isr_val)
+                {
+                    trace<level::INFO>("Error! cfam read 0x1007 INVALID");
+                    continue;
+                }
                 else
                 {
                     // trace isr
@@ -119,6 +126,8 @@
                        << isr_val;
                     trace<level::INFO>(ss.str().c_str());
 
+                    isr_mask = 0xffffffff; // invalid isr mask
+
                     // get interrupt enabled special attentions mask
                     if (RC_SUCCESS != fsi_read(attnTarget, 0x100d, &isr_mask))
                     {
@@ -126,6 +135,11 @@
                         trace<level::INFO>("Error! cfam read 0x100d FAILED");
                         eventAttentionFail(RC_CFAM_ERROR);
                     }
+                    else if (0xffffffff == isr_mask)
+                    {
+                        trace<level::INFO>("Error! cfam read 0x100d INVALID");
+                        continue;
+                    }
                     else
                     {
                         // trace true-mask
