Thread (27 messages) 27 messages, 4 authors, 2023-10-15

Re: [PATCH 03/14] bitops: let the compiler optimize __assign_bit()

From: Alexander Lobakin <aleksander.lobakin@intel.com>
Date: 2023-10-11 07:27:27
Also in: dm-devel, linux-btrfs, linux-s390, lkml, ntfs3

From: Yury Norov <yury.norov@gmail.com>
Date: Mon, 9 Oct 2023 09:18:40 -0700
On Mon, Oct 09, 2023 at 05:10:15PM +0200, Alexander Lobakin wrote:
[...]
quoted
-static __always_inline void __assign_bit(long nr, volatile unsigned long *addr,
-					 bool value)
-{
-	if (value)
-		__set_bit(nr, addr);
-	else
-		__clear_bit(nr, addr);
-}
+#define __assign_bit(nr, addr, value)				\
+	((value) ? __set_bit(nr, addr) : __clear_bit(nr, addr))
Can you protect nr and addr with braces just as well?
Can you convert the atomic version too, to keep them synchronized ?
+ for both. I didn't convert assign_bit() as I thought it wouldn't give
any optimization improvements, but yeah, let the compiler decide.
quoted
 
 /**
  * __ptr_set_bit - Set bit in a pointer's value
-- 
2.41.0
Thanks,
Olek
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help