[PATCH v2 11/16] raw/ifpga: use previous value atomic fetch operations
Tyler Retzlaff
roretzla at linux.microsoft.com
Wed Mar 15 22:15:40 CET 2023
Use __atomic_fetch_{add,and,or,sub,xor} instead of
__atomic_{add,and,or,sub,xor}_fetch adding the necessary code to
allow consumption of the resulting value.
Signed-off-by: Tyler Retzlaff <roretzla at linux.microsoft.com>
---
drivers/raw/ifpga/ifpga_rawdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/raw/ifpga/ifpga_rawdev.c b/drivers/raw/ifpga/ifpga_rawdev.c
index 1020adc..ae3f79d 100644
--- a/drivers/raw/ifpga/ifpga_rawdev.c
+++ b/drivers/raw/ifpga/ifpga_rawdev.c
@@ -573,7 +573,7 @@ static int set_surprise_link_check_aer(
dev->poll_enabled = 0;
- if (!__atomic_sub_fetch(&ifpga_monitor_refcnt, 1, __ATOMIC_RELAXED) &&
+ if (!(__atomic_fetch_sub(&ifpga_monitor_refcnt, 1, __ATOMIC_RELAXED) - 1) &&
ifpga_monitor_start_thread) {
ret = pthread_cancel(ifpga_monitor_start_thread);
if (ret)
--
1.8.3.1
More information about the dev
mailing list