[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Implementation of lock-free atomics on m68k



Hi!

There is currently an ongoing discussion regarding the Debian armel port on
debian-devel [1]. The plan is to drop armel from the release architectures
unless important issues can be resolved in the toolchain.

The main problem they currently have is the lack of lock-free atomics on
armel [2]. On the other hand, although m68k is a rather old architecture,
we actually don't have this particular problem:

(sid-m68k-sbuild)root@ikarus:/# echo | gcc -E -dM - |grep -i lock
#define __GCC_ATOMIC_CHAR_LOCK_FREE 2
#define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2
#define __GCC_ATOMIC_BOOL_LOCK_FREE 2
#define __GCC_ATOMIC_POINTER_LOCK_FREE 2
#define __GCC_ATOMIC_INT_LOCK_FREE 2
#define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2
#define __GCC_ATOMIC_LONG_LOCK_FREE 2
#define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2
#define __GCC_ATOMIC_LLONG_LOCK_FREE 1
#define __GCC_ATOMIC_SHORT_LOCK_FREE 2
(sid-m68k-sbuild)root@ikarus:/#

Does anyone know how these are implemented on m68k? Does m68k use helper
functions in the kernel or is this actually done in hardware?

Thanks,
Adrian

> [1] https://lists.debian.org/debian-devel/2016/12/msg00135.html
> [2] https://lists.debian.org/debian-devel/2016/12/msg00141.html

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913


Reply to: