Print this page
NEX-14413 Bad trap in module "apix" due to a NULL pointer dereference
Reviewed by: Steve Peng <steve.peng@nexenta.com>
Reviewed by: Evan Layton <evan.layton@nexenta.com>
Reviewed by: Rob Gittins <rob.gittins@nexenta.com>
        
*** 973,987 ****
                  ispec->intrspec_pri = hdlp->ih_pri;
          }
          ihdl_plat_datap->ip_ispecp = ispec;
  
          /* translate the interrupt if needed */
!         (void) (*psm_intr_ops)(rdip, hdlp, PSM_INTR_OP_XLATE_VECTOR, &irq);
! 
          /* Disable the interrupt handler */
          rem_avintr((void *)hdlp, hdlp->ih_pri, hdlp->ih_cb_func, irq);
          ihdl_plat_datap->ip_ispecp = NULL;
  }
  
  /*
   * Miscellaneous library function
   */
--- 973,988 ----
                  ispec->intrspec_pri = hdlp->ih_pri;
          }
          ihdl_plat_datap->ip_ispecp = ispec;
  
          /* translate the interrupt if needed */
!         if ((*psm_intr_ops)(rdip, hdlp, PSM_INTR_OP_XLATE_VECTOR, &irq) !=
!             PSM_FAILURE) {
                  /* Disable the interrupt handler */
                  rem_avintr((void *)hdlp, hdlp->ih_pri, hdlp->ih_cb_func, irq);
                  ihdl_plat_datap->ip_ispecp = NULL;
+         }
  }
  
  /*
   * Miscellaneous library function
   */