Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5da0831c598f94582bce6bb0a55b8de2f9897cb1
Commit:     5da0831c598f94582bce6bb0a55b8de2f9897cb1
Parent:     8ca47e00690914a9e5e6c734baa37c829a2f2fa1
Author:     Douglas Thompson <[EMAIL PROTECTED]>
AuthorDate: Thu Jul 19 01:49:31 2007 -0700
Committer:  Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Thu Jul 19 10:04:53 2007 -0700

    drivers/edac: add edac_mc_find API
    
    This simple patch adds an important CORE API for EDAC that EDAC drivers can
    use to find their edac_mc control structure by passing a mem_ctl_info
    'instance' value
    
    Needed for subsequent patches
    
    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 |   28 ++++++++++++++++++++++++++++
 drivers/edac/edac_mc.h |    1 +
 2 files changed, 29 insertions(+), 0 deletions(-)

diff --git a/drivers/edac/edac_mc.c b/drivers/edac/edac_mc.c
index 804875d..c1a8bf2 100644
--- a/drivers/edac/edac_mc.c
+++ b/drivers/edac/edac_mc.c
@@ -1457,6 +1457,34 @@ static void del_mc_from_global_list(struct mem_ctl_info 
*mci)
 }
 
 /**
+ * edac_mc_find: Search for a mem_ctl_info structure whose index is 'idx'.
+ *
+ * If found, return a pointer to the structure.
+ * Else return NULL.
+ *
+ * Caller must hold mem_ctls_mutex.
+ */
+struct mem_ctl_info * edac_mc_find(int idx)
+{
+       struct list_head *item;
+       struct mem_ctl_info *mci;
+
+       list_for_each(item, &mc_devices) {
+               mci = list_entry(item, struct mem_ctl_info, link);
+
+               if (mci->mc_idx >= idx) {
+                       if (mci->mc_idx == idx)
+                               return mci;
+
+                       break;
+               }
+       }
+
+       return NULL;
+}
+EXPORT_SYMBOL(edac_mc_find);
+
+/**
  * edac_mc_add_mc: Insert the 'mci' structure into the mci global list and
  *                 create sysfs entries associated with mci structure
  * @mci: pointer to the mci structure to be added to the list
diff --git a/drivers/edac/edac_mc.h b/drivers/edac/edac_mc.h
index 713444c..9ad8a20 100644
--- a/drivers/edac/edac_mc.h
+++ b/drivers/edac/edac_mc.h
@@ -430,6 +430,7 @@ void edac_mc_dump_mci(struct mem_ctl_info *mci);
 void edac_mc_dump_csrow(struct csrow_info *csrow);
 #endif  /* CONFIG_EDAC_DEBUG */
 
+extern struct mem_ctl_info * edac_mc_find(int idx);
 extern int edac_mc_add_mc(struct mem_ctl_info *mci,int mc_idx);
 extern struct mem_ctl_info * edac_mc_del_mc(struct device *dev);
 extern int edac_mc_find_csrow_by_page(struct mem_ctl_info *mci,
-
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