diff options
author | Dan Williams <dan.j.williams@intel.com> | 2016-12-15 23:04:31 -0500 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2016-12-15 23:04:31 -0500 |
commit | 9cf8bd529c6ba81402ebf6b7a56307b0787e4f93 (patch) | |
tree | f53a27f54dbdec467905608fa1585a3e5b7b6e67 | |
parent | af7d9f0c57941b465043681cb5c3410f7f3f1a41 (diff) |
libnvdimm: replace mutex_is_locked() warnings with lockdep_assert_held
For warnings that should only ever trigger during development and
testing replace WARN statements with lockdep_assert_held. The lockdep
pattern is prevalent, and these paths are are well covered by libnvdimm
unit tests.
Reported-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
-rw-r--r-- | drivers/nvdimm/claim.c | 10 | ||||
-rw-r--r-- | drivers/nvdimm/namespace_devs.c | 2 | ||||
-rw-r--r-- | drivers/nvdimm/region_devs.c | 2 |
3 files changed, 6 insertions, 8 deletions
diff --git a/drivers/nvdimm/claim.c b/drivers/nvdimm/claim.c index 3376da1fb263..97d1772774a8 100644 --- a/drivers/nvdimm/claim.c +++ b/drivers/nvdimm/claim.c | |||
@@ -22,9 +22,8 @@ void __nd_detach_ndns(struct device *dev, struct nd_namespace_common **_ndns) | |||
22 | { | 22 | { |
23 | struct nd_namespace_common *ndns = *_ndns; | 23 | struct nd_namespace_common *ndns = *_ndns; |
24 | 24 | ||
25 | dev_WARN_ONCE(dev, !mutex_is_locked(&ndns->dev.mutex) | 25 | lockdep_assert_held(&ndns->dev.mutex); |
26 | || ndns->claim != dev, | 26 | dev_WARN_ONCE(dev, ndns->claim != dev, "%s: invalid claim\n", __func__); |
27 | "%s: invalid claim\n", __func__); | ||
28 | ndns->claim = NULL; | 27 | ndns->claim = NULL; |
29 | *_ndns = NULL; | 28 | *_ndns = NULL; |
30 | put_device(&ndns->dev); | 29 | put_device(&ndns->dev); |
@@ -49,9 +48,8 @@ bool __nd_attach_ndns(struct device *dev, struct nd_namespace_common *attach, | |||
49 | { | 48 | { |
50 | if (attach->claim) | 49 | if (attach->claim) |
51 | return false; | 50 | return false; |
52 | dev_WARN_ONCE(dev, !mutex_is_locked(&attach->dev.mutex) | 51 | lockdep_assert_held(&attach->dev.mutex); |
53 | || *_ndns, | 52 | dev_WARN_ONCE(dev, *_ndns, "%s: invalid claim\n", __func__); |
54 | "%s: invalid claim\n", __func__); | ||
55 | attach->claim = dev; | 53 | attach->claim = dev; |
56 | *_ndns = attach; | 54 | *_ndns = attach; |
57 | get_device(&attach->dev); | 55 | get_device(&attach->dev); |
diff --git a/drivers/nvdimm/namespace_devs.c b/drivers/nvdimm/namespace_devs.c index 8817f8a0cf38..de5809a88512 100644 --- a/drivers/nvdimm/namespace_devs.c +++ b/drivers/nvdimm/namespace_devs.c | |||
@@ -1653,7 +1653,7 @@ static int select_pmem_id(struct nd_region *nd_region, u8 *pmem_id) | |||
1653 | u64 hw_start, hw_end, pmem_start, pmem_end; | 1653 | u64 hw_start, hw_end, pmem_start, pmem_end; |
1654 | struct nd_label_ent *label_ent; | 1654 | struct nd_label_ent *label_ent; |
1655 | 1655 | ||
1656 | WARN_ON(!mutex_is_locked(&nd_mapping->lock)); | 1656 | lockdep_assert_held(&nd_mapping->lock); |
1657 | list_for_each_entry(label_ent, &nd_mapping->labels, list) { | 1657 | list_for_each_entry(label_ent, &nd_mapping->labels, list) { |
1658 | nd_label = label_ent->label; | 1658 | nd_label = label_ent->label; |
1659 | if (!nd_label) | 1659 | if (!nd_label) |
diff --git a/drivers/nvdimm/region_devs.c b/drivers/nvdimm/region_devs.c index 6af5e629140c..7cd705f3247c 100644 --- a/drivers/nvdimm/region_devs.c +++ b/drivers/nvdimm/region_devs.c | |||
@@ -509,7 +509,7 @@ void nd_mapping_free_labels(struct nd_mapping *nd_mapping) | |||
509 | { | 509 | { |
510 | struct nd_label_ent *label_ent, *e; | 510 | struct nd_label_ent *label_ent, *e; |
511 | 511 | ||
512 | WARN_ON(!mutex_is_locked(&nd_mapping->lock)); | 512 | lockdep_assert_held(&nd_mapping->lock); |
513 | list_for_each_entry_safe(label_ent, e, &nd_mapping->labels, list) { | 513 | list_for_each_entry_safe(label_ent, e, &nd_mapping->labels, list) { |
514 | list_del(&label_ent->list); | 514 | list_del(&label_ent->list); |
515 | kfree(label_ent); | 515 | kfree(label_ent); |