On 8/13/24 16:01, Linus Torvalds wrote:
On Tue, 13 Aug 2024 at 12:58, Waiman Long <longman@xxxxxxxxxx> wrote:
Sorry for the confusion. What you said above is actually the reason that
I ask this question. In the same way, smp_rmb()/wmb() is available for
all arches. I am actually asking if it should be a flag that indicates
the arch's preference to use acquire/release over rmb/wmb.
I think that if an arch says it has native acquire/release, we should
basically assume that it's the better model.
I mean, we could certainly use "PREFERS" instead of "HAS", but is
there any real reason to do that?
Do we suddenly expect that people would make a CPU that has native
acquire/release, and it would somehow then prefer a full read barrier?
ARCH_HAS_ACQUIRE_RELEASE is fine, but the help text for this Kconfig option should clarify this preference as both the ARCH_HAS_ACQUIRE_RELEASE and the !ARCH_HAS_ACQUIRE_RELEASE code are valid.
Cheers,
Longman