diff options
author | Andreas Schwab <schwab@suse.de> | 2014-05-06 11:55:24 +0200 |
---|---|---|
committer | Andreas Schwab <schwab@suse.de> | 2014-05-06 16:30:48 +0200 |
commit | 978a41c35738dbe4592edb7dcaa155fec31dab50 (patch) | |
tree | 77194186d69c4cdaff3ec4b6433ba64d8af2b6e6 | |
parent | fe6588457a7b66c6cfcd6e51640453de59b8017b (diff) | |
download | glibc-978a41c35738dbe4592edb7dcaa155fec31dab50.tar.gz |
Don't use catomic functions in mcount (BZ #16912)
mcount cannot use catomic functions since it is called by
__libc_start_main before TLS is set up. This reverts the change made by
commit 8099361.
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | gmon/mcount.c | 4 |
3 files changed, 10 insertions, 3 deletions
@@ -1,3 +1,10 @@ +2014-05-06 Andreas Schwab <schwab@suse.de> + + [BZ #16912] + * gmon/mcount.c (_MCOUNT_DECL): Use + atomic_compare_and_exchange_bool_acq instead of + catomic_compare_and_exchange_bool_acq. + 2014-05-05 Roland McGrath <roland@hack.frob.com> * elf/Makefile (others, install-bin): Remove pldd. @@ -16,7 +16,7 @@ Version 2.20 16677, 16680, 16683, 16689, 16695, 16701, 16706, 16707, 16712, 16713, 16714, 16731, 16739, 16740, 16743, 16754, 16758, 16759, 16760, 16770, 16786, 16789, 16791, 16799, 16800, 16815, 16823, 16824, 16831, 16838, - 16854, 16885, 16888, 16890. + 16854, 16885, 16888, 16890, 16912. * The minimum Linux kernel version that this version of the GNU C Library can be used with is 2.6.32. diff --git a/gmon/mcount.c b/gmon/mcount.c index 0c2acd2890..9d4a1a50fa 100644 --- a/gmon/mcount.c +++ b/gmon/mcount.c @@ -69,8 +69,8 @@ _MCOUNT_DECL(frompc, selfpc) /* _mcount; may be static, inline, etc */ * check that we are profiling * and that we aren't recursively invoked. */ - if (catomic_compare_and_exchange_bool_acq (&p->state, GMON_PROF_BUSY, - GMON_PROF_ON)) + if (atomic_compare_and_exchange_bool_acq (&p->state, GMON_PROF_BUSY, + GMON_PROF_ON)) return; /* |