Hi All,


In arch/arm64/include/asm/barrier.h, there is the definition of smp_mb()/smp_rmb()/smp_wmb() for arm64. I noticed that all the 3 macors are using “dmb ishxx”, which is only affect the cluster of the CPU executing the instruction. But in the big.LITTLE system, there will be 2 cluster. So the smp_mb()/smp_rmb()/smp_wmb() cannot affect all the CPU in the system.


Is there other considerations so that smp_mb()/smp_rmb()/smp_wmb() are implemented to “only affecting inner sharable cores”?



Best Regards,


              Kelvin K. Li
              Software Team, VIA Technologies, Inc.
              5F, VIA Tower, 1 Zhongguancun East Road,
              Haidian District, Beijing, 100084
              Tel: 86-10-59852288 ext.3620
              mailto: kelvinkli@via-alliance.com