• M
    dm stats: fix possible counter corruption on 32-bit systems · bbf3f8cb
    Mikulas Patocka 提交于
    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: NMikulas Patocka <mpatocka@redhat.com>
    Cc: Alasdair G. Kergon <agk@redhat.com>
    Signed-off-by: NMike Snitzer <snitzer@redhat.com>
    bbf3f8cb
dm-stats.c 23.4 KB