On 19.09.19 18:17:12, Hanna Hawa wrote:
Add an API for EDAC device to report multiple errors with same type.
Signed-off-by: Hanna Hawa <hhhawa@xxxxxxxxxx>
With the change below it looks good to me:
Acked-by: Robert Richter <rrichter@xxxxxxxxxxx>
Thanks,
-Robert
---
drivers/edac/edac_device.c | 62 ++++++++++++++++++++++++++------------
drivers/edac/edac_device.h | 40 ++++++++++++++++++++++++
2 files changed, 82 insertions(+), 20 deletions(-)
diff --git a/drivers/edac/edac_device.c b/drivers/edac/edac_device.c
index 65cf2b9355c4..866934f2bcb0 100644
--- a/drivers/edac/edac_device.c
+++ b/drivers/edac/edac_device.c
@@ -555,12 +555,16 @@ static inline int edac_device_get_panic_on_ue(struct edac_device_ctl_info
return edac_dev->panic_on_ue;
}
-void edac_device_handle_ce(struct edac_device_ctl_info *edac_dev,
- int inst_nr, int block_nr, const char *msg)
+void __edac_device_handle_ce(struct edac_device_ctl_info *edac_dev,
+ unsigned int count, int inst_nr, int block_nr,
+ const char *msg)
{
struct edac_device_instance *instance;
struct edac_device_block *block = NULL;
+ if (!count)
+ return;
+
Those checks should be moved to the *_count() variants of both
functions.
[...]
+static inline void edac_device_handle_ce_count(struct edac_device_ctl_info *edac_dev,
+ unsigned int count, int inst_nr,
+ int block_nr, const char *msg)
+{
if (count)
...
+ __edac_device_handle_ce(edac_dev, count, inst_nr, block_nr, msg);
+}
+
+static inline void edac_device_handle_ue_count(struct edac_device_ctl_info *edac_dev,
+ unsigned int count, int inst_nr,
+ int block_nr, const char *msg)
+{
Here too.
+ __edac_device_handle_ue(edac_dev, count, inst_nr, block_nr, msg);
+}