diff options
author | Mikulas Patocka <mpatocka@redhat.com> | 2013-09-13 17:42:24 -0400 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2013-09-18 14:41:06 -0400 |
commit | bbf3f8cbdc139860a14c4fc2bb25432427045aaa (patch) | |
tree | 49c29342acc975d30d5d7399c9ba2ceacd718a01 /lib/lru_cache.c | |
parent | cc9d3c382bc1674884c2e5e468d51230a9503dee (diff) | |
download | linux-bbf3f8cbdc139860a14c4fc2bb25432427045aaa.tar.bz2 |
dm stats: fix possible counter corruption on 32-bit systems
There was a deliberate race condition in dm_stat_for_entry() to avoid the
overhead of disabling and enabling interrupts. The race could result in
some events not being counted on 64-bit architectures.
However, on 32-bit architectures, operations on long long variables are
not atomic, so the race condition could cause the counter to jump by 2^32.
Such jumps could be disruptive, so we need to do proper locking on 32-bit
architectures.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Cc: Alasdair G. Kergon <agk@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'lib/lru_cache.c')
0 files changed, 0 insertions, 0 deletions