Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=66ee2f940ac8ab25f0c43a1e717d25dc46bfe74d
Commit:     66ee2f940ac8ab25f0c43a1e717d25dc46bfe74d
Parent:     91b99041c1d577ded1da599ddc28cec2e07253cf
Author:     Dave Jiang <[EMAIL PROTECTED]>
AuthorDate: Thu Jul 19 01:49:54 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Thu Jul 19 10:04:54 2007 -0700

    drivers/edac: mod assert_error check
    
    Change error check and clear variable from an atomic to an int
    
    Signed-off-by: Dave Jiang <[EMAIL PROTECTED]>
    Signed-off-by: Douglas Thompson <[EMAIL PROTECTED]
    Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
    Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
 drivers/edac/edac_mc.c   |   11 ++++-------
 drivers/edac/edac_stub.c |    4 ++--
 include/linux/edac.h     |    2 +-
 3 files changed, 7 insertions(+), 10 deletions(-)

diff --git a/drivers/edac/edac_mc.c b/drivers/edac/edac_mc.c
index 3474ca9..7c952c6 100644
--- a/drivers/edac/edac_mc.c
+++ b/drivers/edac/edac_mc.c
@@ -222,18 +222,15 @@ static struct mem_ctl_info *find_mci_by_dev(struct device 
*dev)
  */
 static int edac_mc_assert_error_check_and_clear(void)
 {
-       int vreg;
+       int old_state;
 
        if(edac_op_state == EDAC_OPSTATE_POLL)
                return 1;
 
-       vreg = atomic_read(&edac_err_assert);
-       if(vreg) {
-               atomic_set(&edac_err_assert, 0);
-               return 1;
-       }
+       old_state = edac_err_assert;
+       edac_err_assert = 0;
 
-       return 0;
+       return old_state;
 }
 
 /*
diff --git a/drivers/edac/edac_stub.c b/drivers/edac/edac_stub.c
index 91a038d..3d259c2 100644
--- a/drivers/edac/edac_stub.c
+++ b/drivers/edac/edac_stub.c
@@ -20,7 +20,7 @@ EXPORT_SYMBOL(edac_op_state);
 atomic_t edac_handlers = ATOMIC_INIT(0);
 EXPORT_SYMBOL(edac_handlers);
 
-atomic_t edac_err_assert = ATOMIC_INIT(0);
+int edac_err_assert = 0;
 EXPORT_SYMBOL(edac_err_assert);
 
 inline int edac_handler_set(void)
@@ -37,6 +37,6 @@ EXPORT_SYMBOL(edac_handler_set);
  */
 inline void edac_atomic_assert_error(void)
 {
-       atomic_set(&edac_err_assert, 1);
+       edac_err_assert++;
 }
 EXPORT_SYMBOL(edac_atomic_assert_error);
diff --git a/include/linux/edac.h b/include/linux/edac.h
index c8b92d7..eab451e 100644
--- a/include/linux/edac.h
+++ b/include/linux/edac.h
@@ -20,8 +20,8 @@
 #define EDAC_OPSTATE_INT       2
 
 extern int edac_op_state;
+extern int edac_err_assert;
 extern atomic_t edac_handlers;
-extern atomic_t edac_err_assert;
 
 extern int edac_handler_set(void);
 extern void edac_atomic_assert_error(void);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to