]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/powerpc/kernel/eeh.c
powerpc/eeh: Export confirm_error_lock
[karo-tx-linux.git] / arch / powerpc / kernel / eeh.c
index 777ecc06af19f5595105d1cd3e410c28ae4c1bf2..81cd0311dee86c3a71bfa79ba40c603b76faa90b 100644 (file)
@@ -107,7 +107,7 @@ int eeh_probe_mode;
 DEFINE_MUTEX(eeh_mutex);
 
 /* Lock to avoid races due to multiple reports of an error */
-static DEFINE_RAW_SPINLOCK(confirm_error_lock);
+DEFINE_RAW_SPINLOCK(confirm_error_lock);
 
 /* Buffer for reporting pci register dumps. Its here in BSS, and
  * not dynamically alloced, so that it ends up in RMO where RTAS
@@ -325,7 +325,7 @@ int eeh_dev_check_failure(struct eeh_dev *edev)
         * in one slot might report errors simultaneously, and we
         * only want one error recovery routine running.
         */
-       raw_spin_lock_irqsave(&confirm_error_lock, flags);
+       eeh_serialize_lock(&flags);
        rc = 1;
        if (pe->state & EEH_PE_ISOLATED) {
                pe->check_count++;
@@ -374,7 +374,7 @@ int eeh_dev_check_failure(struct eeh_dev *edev)
         * bridges.
         */
        eeh_pe_state_mark(pe, EEH_PE_ISOLATED);
-       raw_spin_unlock_irqrestore(&confirm_error_lock, flags);
+       eeh_serialize_unlock(flags);
 
        eeh_send_failure_event(pe);
 
@@ -386,7 +386,7 @@ int eeh_dev_check_failure(struct eeh_dev *edev)
        return 1;
 
 dn_unlock:
-       raw_spin_unlock_irqrestore(&confirm_error_lock, flags);
+       eeh_serialize_unlock(flags);
        return rc;
 }
 
@@ -702,8 +702,6 @@ int __init eeh_init(void)
                return ret;
        }
 
-       raw_spin_lock_init(&confirm_error_lock);
-
        /* Initialize EEH event */
        ret = eeh_event_init();
        if (ret)