diff options
author | Douglas Anderson <dianders@chromium.org> | 2020-07-15 16:46:15 -0700 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-07-16 20:41:58 +0100 |
commit | 299632e54b2e692d2830af84be51172480dc1e26 (patch) | |
tree | 65171a1cbbd6433e9ad87033ca03534242eefcd2 /scripts/gcc-plugins/cyc_complexity_plugin.c | |
parent | 443a34ba68e8a627c15f9987b11cfa01f3e1ba0a (diff) |
regmap: debugfs: Don't sleep while atomic for fast_io regmaps
If a regmap has "fast_io" set then its lock function uses a spinlock.
That doesn't work so well with the functions:
* regmap_cache_only_write_file()
* regmap_cache_bypass_write_file()
Both of the above functions have the pattern:
1. Lock the regmap.
2. Call:
debugfs_write_file_bool()
copy_from_user()
__might_fault()
__might_sleep()
Let's reorder things a bit so that we do all of our sleepable
functions before we grab the lock.
Fixes: d3dc5430d68f ("regmap: debugfs: Allow writes to cache state settings")
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://lore.kernel.org/r/20200715164611.1.I35b3533e8a80efde0cec1cc70f71e1e74b2fa0da@changeid
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'scripts/gcc-plugins/cyc_complexity_plugin.c')
0 files changed, 0 insertions, 0 deletions