1 cat <<EOF 1 cat <<EOF >> 2 static __always_inline ${ret} >> 3 arch_${atomic}_read_acquire(const ${atomic}_t *v) >> 4 { 2 ${int} ret; 5 ${int} ret; 3 6 4 if (__native_word(${atomic}_t)) { 7 if (__native_word(${atomic}_t)) { 5 ret = smp_load_acquire(&(v)->c 8 ret = smp_load_acquire(&(v)->counter); 6 } else { 9 } else { 7 ret = raw_${atomic}_read(v); !! 10 ret = arch_${atomic}_read(v); 8 __atomic_acquire_fence(); 11 __atomic_acquire_fence(); 9 } 12 } 10 13 11 return ret; 14 return ret; >> 15 } 12 EOF 16 EOF
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.