diff options
author | Borislav Petkov <bp@suse.de> | 2017-01-26 16:49:59 +0100 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2017-04-10 17:14:17 +0200 |
commit | 97bb6c17ad5a0892beb45070dfe8c7d6d0e5326e (patch) | |
tree | 5c3a105f840e97793c0e43093cb870e87e361d78 /drivers/edac | |
parent | db47d5f856467ce0dd3af7e20a33df3d901266df (diff) | |
download | op-kernel-dev-97bb6c17ad5a0892beb45070dfe8c7d6d0e5326e.zip op-kernel-dev-97bb6c17ad5a0892beb45070dfe8c7d6d0e5326e.tar.gz |
EDAC: Get rid of edac_handlers
Use mc_devices list instead to check whether we have EDAC driver
instances successfully registered with EDAC core.
Signed-off-by: Borislav Petkov <bp@suse.de>
Diffstat (limited to 'drivers/edac')
-rw-r--r-- | drivers/edac/edac_mc.c | 6 | ||||
-rw-r--r-- | drivers/edac/edac_stub.c | 3 |
2 files changed, 2 insertions, 7 deletions
diff --git a/drivers/edac/edac_mc.c b/drivers/edac/edac_mc.c index e5573c5..824d311 100644 --- a/drivers/edac/edac_mc.c +++ b/drivers/edac/edac_mc.c @@ -601,7 +601,6 @@ static int add_mc_to_global_list(struct mem_ctl_info *mci) } list_add_tail_rcu(&mci->link, insert_before); - atomic_inc(&edac_handlers); return 0; fail0: @@ -619,7 +618,6 @@ fail1: static int del_mc_from_global_list(struct mem_ctl_info *mci) { - int handlers = atomic_dec_return(&edac_handlers); list_del_rcu(&mci->link); /* these are for safe removal of devices from global list while @@ -628,7 +626,7 @@ static int del_mc_from_global_list(struct mem_ctl_info *mci) synchronize_rcu(); INIT_LIST_HEAD(&mci->link); - return handlers; + return list_empty(&mc_devices); } struct mem_ctl_info *edac_mc_find(int idx) @@ -763,7 +761,7 @@ struct mem_ctl_info *edac_mc_del_mc(struct device *dev) /* mark MCI offline: */ mci->op_state = OP_OFFLINE; - if (!del_mc_from_global_list(mci)) + if (del_mc_from_global_list(mci)) edac_mc_owner = NULL; mutex_unlock(&mem_ctls_mutex); diff --git a/drivers/edac/edac_stub.c b/drivers/edac/edac_stub.c index d1389e4..cfb250f 100644 --- a/drivers/edac/edac_stub.c +++ b/drivers/edac/edac_stub.c @@ -20,9 +20,6 @@ int edac_op_state = EDAC_OPSTATE_INVAL; EXPORT_SYMBOL_GPL(edac_op_state); -atomic_t edac_handlers = ATOMIC_INIT(0); -EXPORT_SYMBOL_GPL(edac_handlers); - int edac_err_assert = 0; EXPORT_SYMBOL_GPL(edac_err_assert); |