summaryrefslogtreecommitdiff
path: root/drivers/crypto/hisilicon/sec2/sec.h
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2020-01-07 23:08:58 +0300
committerHerbert Xu <herbert@gondor.apana.org.au>2020-01-09 06:28:08 +0300
commitcb1eeb75cf3dd84ced81333967200583993dfd73 (patch)
treeb0598ab85730bdb269f7a127991211bdb1fb956f /drivers/crypto/hisilicon/sec2/sec.h
parent84faa307249b341f6ad8de3e1869d77a65e26669 (diff)
downloadlinux-cb1eeb75cf3dd84ced81333967200583993dfd73.tar.xz
crypto: hisilicon/sec2 - Use atomics instead of __sync
The use of __sync functions for atomic memory access is not supported in the kernel, and can result in a link error depending on configuration: ERROR: "__tsan_atomic32_compare_exchange_strong" [drivers/crypto/hisilicon/sec2/hisi_sec2.ko] undefined! ERROR: "__tsan_atomic64_fetch_add" [drivers/crypto/hisilicon/sec2/hisi_sec2.ko] undefined! Use the kernel's own atomic interfaces instead. This way the debugfs interface actually reads the counter atomically. Fixes: 416d82204df4 ("crypto: hisilicon - add HiSilicon SEC V2 driver") Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'drivers/crypto/hisilicon/sec2/sec.h')
-rw-r--r--drivers/crypto/hisilicon/sec2/sec.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/crypto/hisilicon/sec2/sec.h b/drivers/crypto/hisilicon/sec2/sec.h
index 26754d0570ba..b846d73d9a85 100644
--- a/drivers/crypto/hisilicon/sec2/sec.h
+++ b/drivers/crypto/hisilicon/sec2/sec.h
@@ -40,7 +40,7 @@ struct sec_req {
int req_id;
/* Status of the SEC request */
- int fake_busy;
+ atomic_t fake_busy;
};
/**
@@ -132,8 +132,8 @@ struct sec_debug_file {
};
struct sec_dfx {
- u64 send_cnt;
- u64 recv_cnt;
+ atomic64_t send_cnt;
+ atomic64_t recv_cnt;
};
struct sec_debug {