aboutsummaryrefslogtreecommitdiff
path: root/kernel/trace/tracing_map.c
diff options
context:
space:
mode:
authorGravatar Mark Brown <broonie@kernel.org> 2024-02-01 17:45:32 +0000
committerGravatar Mark Brown <broonie@kernel.org> 2024-02-01 17:45:32 +0000
commite81fdba0208666b65bafeaba814874b4d6e5edde (patch)
tree5de26e8be4ca1801ca27bffe25c129d29b13dba9 /kernel/trace/tracing_map.c
parentASoC: amd: acp: Fix support for a Huawei Matebook laptop (diff)
parentALSA: hda: cs35l56: Remove unused test stub function (diff)
downloadlinux-e81fdba0208666b65bafeaba814874b4d6e5edde.tar.gz
linux-e81fdba0208666b65bafeaba814874b4d6e5edde.tar.bz2
linux-e81fdba0208666b65bafeaba814874b4d6e5edde.zip
ALSA: Various fixes for Cirrus Logic CS35L56 support
Merge series from Richard Fitzgerald <rf@opensource.cirrus.com>: These patches fixe various things that were undocumented, unknown or uncertain when the original driver code was written. And also a few things that were just bugs.
Diffstat (limited to 'kernel/trace/tracing_map.c')
-rw-r--r--kernel/trace/tracing_map.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/trace/tracing_map.c b/kernel/trace/tracing_map.c
index c774e560f2f9..a4dcf0f24352 100644
--- a/kernel/trace/tracing_map.c
+++ b/kernel/trace/tracing_map.c
@@ -574,7 +574,12 @@ __tracing_map_insert(struct tracing_map *map, void *key, bool lookup_only)
}
memcpy(elt->key, key, map->key_size);
- entry->val = elt;
+ /*
+ * Ensure the initialization is visible and
+ * publish the elt.
+ */
+ smp_wmb();
+ WRITE_ONCE(entry->val, elt);
atomic64_inc(&map->hits);
return entry->val;