Paul Eggert 
							
						 
					 
					
						
						
							
						
						2b778ceb40 
					 
					
						
						
							
							Update copyright dates with scripts/update-copyrights  
						
						... 
						
						
						
						I used these shell commands:
../glibc/scripts/update-copyrights $PWD/../gnulib/build-aux/update-copyright
(cd ../glibc && git commit -am"[this commit message]")
and then ignored the output, which consisted lines saying "FOO: warning:
copyright statement not found" for each of 6694 files FOO.
I then removed trailing white space from benchtests/bench-pthread-locks.c
and iconvdata/tst-iconv-big5-hkscs-to-2ucs4.c, to work around this
diagnostic from Savannah:
remote: *** pre-commit check failed ...
remote: *** error: lines with trailing whitespace found
remote: error: hook declined to update refs/heads/master 
						
						
					 
					
						2021-01-02 12:17:34 -08:00 
						 
				 
			
				
					
						
							
							
								H.J. Lu 
							
						 
					 
					
						
						
							
						
						5d844e1b72 
					 
					
						
						
							
							i386: Enable CET support in ucontext functions  
						
						... 
						
						
						
						1. getcontext and swapcontext are updated to save the caller's shadow
stack pointer and return address.
2. setcontext and swapcontext are updated to restore shadow stack and
jump to new context directly.
3. makecontext is updated to allocate a new shadow stack and set the
caller's return address to the helper code, L(exitcode).
4. Since we no longer save and restore EAX, ECX and EDX in getcontext,
setcontext and swapcontext, we can use them as scratch register slots
to enable CET in ucontext functions.
Since makecontext allocates a new shadow stack when making a new
context and kernel allocates a new shadow stack for clone/fork/vfork
syscalls, we track the current shadow stack base.  In setcontext and
swapcontext, if the target shadow stack base is the same as the current
shadow stack base, we unwind the shadow stack.  Otherwise it is a stack
switch and we look for a restore token.
We enable shadow stack at run-time only if program and all used shared
objects, including dlopened ones, are shadow stack enabled, which means
that they must be compiled with GCC 8 or above and glibc 2.28 or above.
We need to save and restore shadow stack only if shadow stack is enabled.
When caller of getcontext, setcontext, swapcontext and makecontext is
compiled with smaller ucontext_t, shadow stack won't be enabled at
run-time.  We check if shadow stack is enabled before accessing the
extended field in ucontext_t.
Tested on i386 CET/non-CET machines.
Reviewed-by: Carlos O'Donell <carlos@redhat.com > 
						
						
					 
					
						2020-02-14 15:15:25 -08:00 
						 
				 
			
				
					
						
							
							
								H.J. Lu 
							
						 
					 
					
						
						
							
						
						15eab1e3e8 
					 
					
						
						
							
							i386: Don't unnecessarily save and restore EAX, ECX and EDX [BZ# 25262]  
						
						... 
						
						
						
						On i386, since EAX, ECX and EDX are caller-saved, there are no need
to save and restore EAX, ECX and EDX in getcontext, setcontext and
swapcontext.  They just need to clear EAX on success.  The extra
scratch registers are needed to enable CET.
Tested on i386.
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org > 
						
						
					 
					
						2020-02-01 05:44:55 -08:00 
						 
				 
			
				
					
						
							
							
								Joseph Myers 
							
						 
					 
					
						
						
							
						
						d614a75396 
					 
					
						
						
							
							Update copyright dates with scripts/update-copyrights.  
						
						
						
						
					 
					
						2020-01-01 00:14:33 +00:00 
						 
				 
			
				
					
						
							
							
								Paul Eggert 
							
						 
					 
					
						
						
							
						
						5a82c74822 
					 
					
						
						
							
							Prefer https to http for gnu.org and fsf.org URLs  
						
						... 
						
						
						
						Also, change sources.redhat.com to sourceware.org.
This patch was automatically generated by running the following shell
script, which uses GNU sed, and which avoids modifying files imported
from upstream:
sed -ri '
  s,(http|ftp)(://(.*\.)?(gnu|fsf|sourceware)\.org($|[^.]|\.[^a-z])),https\2,g
  s,(http|ftp)(://(.*\.)?)sources\.redhat\.com($|[^.]|\.[^a-z]),https\2sourceware.org\4,g
' \
  $(find $(git ls-files) -prune -type f \
      ! -name '*.po' \
      ! -name 'ChangeLog*' \
      ! -path COPYING ! -path COPYING.LIB \
      ! -path manual/fdl-1.3.texi ! -path manual/lgpl-2.1.texi \
      ! -path manual/texinfo.tex ! -path scripts/config.guess \
      ! -path scripts/config.sub ! -path scripts/install-sh \
      ! -path scripts/mkinstalldirs ! -path scripts/move-if-change \
      ! -path INSTALL ! -path  locale/programs/charmap-kw.h \
      ! -path po/libc.pot ! -path sysdeps/gnu/errlist.c \
      ! '(' -name configure \
            -execdir test -f configure.ac -o -f configure.in ';' ')' \
      ! '(' -name preconfigure \
            -execdir test -f preconfigure.ac ';' ')' \
      -print)
and then by running 'make dist-prepare' to regenerate files built
from the altered files, and then executing the following to cleanup:
  chmod a+x sysdeps/unix/sysv/linux/riscv/configure
  # Omit irrelevant whitespace and comment-only changes,
  # perhaps from a slightly-different Autoconf version.
  git checkout -f \
    sysdeps/csky/configure \
    sysdeps/hppa/configure \
    sysdeps/riscv/configure \
    sysdeps/unix/sysv/linux/csky/configure
  # Omit changes that caused a pre-commit check to fail like this:
  # remote: *** error: sysdeps/powerpc/powerpc64/ppc-mcount.S: trailing lines
  git checkout -f \
    sysdeps/powerpc/powerpc64/ppc-mcount.S \
    sysdeps/unix/sysv/linux/s390/s390-64/syscall.S
  # Omit change that caused a pre-commit check to fail like this:
  # remote: *** error: sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S: last line does not end in newline
  git checkout -f sysdeps/sparc/sparc64/multiarch/memcpy-ultra3.S 
						
						
					 
					
						2019-09-07 02:43:31 -07:00 
						 
				 
			
				
					
						
							
							
								Joseph Myers 
							
						 
					 
					
						
						
							
						
						04277e02d7 
					 
					
						
						
							
							Update copyright dates with scripts/update-copyrights.  
						
						... 
						
						
						
						* All files with FSF copyright notices: Update copyright dates
	using scripts/update-copyrights.
	* locale/programs/charmap-kw.h: Regenerated.
	* locale/programs/locfile-kw.h: Likewise. 
						
						
					 
					
						2019-01-01 00:11:28 +00:00 
						 
				 
			
				
					
						
							
							
								Joseph Myers 
							
						 
					 
					
						
						
							
						
						688903eb3e 
					 
					
						
						
							
							Update copyright dates with scripts/update-copyrights.  
						
						... 
						
						
						
						* All files with FSF copyright notices: Update copyright dates
	using scripts/update-copyrights.
	* locale/programs/charmap-kw.h: Regenerated.
	* locale/programs/locfile-kw.h: Likewise. 
						
						
					 
					
						2018-01-01 00:32:25 +00:00 
						 
				 
			
				
					
						
							
							
								Joseph Myers 
							
						 
					 
					
						
						
							
						
						bfff8b1bec 
					 
					
						
						
							
							Update copyright dates with scripts/update-copyrights.  
						
						
						
						
					 
					
						2017-01-01 00:14:16 +00:00 
						 
				 
			
				
					
						
							
							
								Joseph Myers 
							
						 
					 
					
						
						
							
						
						f7a9f785e5 
					 
					
						
						
							
							Update copyright dates with scripts/update-copyrights.  
						
						
						
						
					 
					
						2016-01-04 16:05:18 +00:00 
						 
				 
			
				
					
						
							
							
								H.J. Lu 
							
						 
					 
					
						
						
							
						
						7e58ab243d 
					 
					
						
						
							
							Call __setcontext with HIDDEN_JUMPTARGET  
						
						... 
						
						
						
						i386 __makecontext should call __setcontext with HIDDEN_JUMPTARGET.
	[BZ #18822 ]
	* sysdeps/unix/sysv/linux/i386/makecontext.S (__makecontext):
	Don't load %ebx when calling __setcontext.  Call __setcontext
	with HIDDEN_JUMPTARGET.
	* sysdeps/unix/sysv/linux/i386/setcontext.S (__setcontext): Add
	libc_hidden_def. 
						
						
					 
					
						2015-08-19 04:41:01 -07:00 
						 
				 
			
				
					
						
							
							
								Joseph Myers 
							
						 
					 
					
						
						
							
						
						b168057aaa 
					 
					
						
						
							
							Update copyright dates with scripts/update-copyrights.  
						
						
						
						
					 
					
						2015-01-02 16:29:47 +00:00 
						 
				 
			
				
					
						
							
							
								Allan McRae 
							
						 
					 
					
						
						
							
						
						d4697bc93d 
					 
					
						
						
							
							Update copyright notices with scripts/update-copyrights  
						
						
						
						
					 
					
						2014-01-01 22:00:23 +10:00 
						 
				 
			
				
					
						
							
							
								Joseph Myers 
							
						 
					 
					
						
						
							
						
						568035b787 
					 
					
						
						
							
							Update copyright notices with scripts/update-copyrights.  
						
						
						
						
					 
					
						2013-01-02 19:05:09 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Schwab 
							
						 
					 
					
						
						
							
						
						842a39cd1a 
					 
					
						
						
							
							Remove unused pseudo_end label  
						
						
						
						
					 
					
						2012-07-25 21:58:17 +02:00 
						 
				 
			
				
					
						
							
							
								Paul Eggert 
							
						 
					 
					
						
						
							
						
						59ba27a63a 
					 
					
						
						
							
							Replace FSF snail mail address with URLs.  
						
						
						
						
					 
					
						2012-02-09 23:18:22 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						1ab18a5bfb 
					 
					
						
						
							
							Add space inf weak_alias use.  
						
						
						
						
					 
					
						2005-05-26 14:30:51 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						fee732e531 
					 
					
						
						
							
							* intl/Makefile (tst-gettext[45].out): Pass also $(run-program-prefix)  
						
						... 
						
						
						
						as argument to the scripts.
	* intl/tst-gettext2.sh: Use mkdir -p instead of test -d + mkdir.
	* intl/tst-gettext4.sh: Likewise.  Use run_program_prefix argument.
	* intl/tst-gettext5.sh: Likewise.
	* intl/tst-translit.sh: Add mkdir -p.
	* sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Use
	.ifndef/.endif to allow use of this macro more than once per .S
	file.
	(LOAD_PIC_REG): New macro.
	* sysdeps/unix/sysv/linux/i386/makecontext.S: Add call frame
	information.
	* sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
	* sysdeps/i386/fpu/s_asinh.S: Use LOAD_PIC_REG macro.  Add call frame
	information.
	* sysdeps/i386/fpu/e_log10f.S: Likewise.
	* sysdeps/i386/fpu/s_expm1.S: Likewise.
	* sysdeps/i386/fpu/e_acoshf.S: Likewise.
	* sysdeps/i386/fpu/e_log2l.S: Likewise.
	* sysdeps/i386/fpu/s_log1pf.S: Likewise.
	* sysdeps/i386/fpu/s_lrint.S: Likewise.
	* sysdeps/i386/fpu/s_llrint.S: Likewise.
	* sysdeps/i386/fpu/s_ilogbf.S: Likewise.
	* sysdeps/i386/fpu/s_cbrtl.S: Likewise.
	* sysdeps/i386/fpu/s_asinhf.S: Likewise.
	* sysdeps/i386/fpu/e_log.S: Likewise.
	* sysdeps/i386/fpu/e_atanhf.S: Likewise.
	* sysdeps/i386/fpu/s_lrintl.S: Likewise.
	* sysdeps/i386/fpu/e_atanhl.S: Likewise.
	* sysdeps/i386/fpu/e_scalb.S: Likewise.
	* sysdeps/i386/fpu/s_log1p.S: Likewise.
	* sysdeps/i386/fpu/s_nearbyintl.S: Likewise.
	* sysdeps/i386/fpu/s_frexpl.S: Likewise.
	* sysdeps/i386/fpu/s_log1pl.S: Likewise.
	* sysdeps/i386/fpu/s_nearbyintf.S: Likewise.
	* sysdeps/i386/fpu/s_cbrt.S: Likewise.
	* sysdeps/i386/fpu/s_expm1l.S: Likewise.
	* sysdeps/i386/fpu/s_lrintf.S: Likewise.
	* sysdeps/i386/fpu/e_acosh.S: Likewise.
	* sysdeps/i386/fpu/s_cexp.S: Likewise.
	* sysdeps/i386/fpu/s_ilogbl.S: Likewise.
	* sysdeps/i386/fpu/s_expm1f.S: Likewise.
	* sysdeps/i386/fpu/e_powl.S: Likewise.
	* sysdeps/i386/fpu/e_powf.S: Likewise.
	* sysdeps/i386/fpu/e_scalbf.S: Likewise.
	* sysdeps/i386/fpu/e_logl.S: Likewise.
	* sysdeps/i386/fpu/e_acoshl.S: Likewise.
	* sysdeps/i386/fpu/s_frexp.S: Likewise.
	* sysdeps/i386/fpu/e_pow.S: Likewise.
	* sysdeps/i386/fpu/e_logf.S: Likewise.
	* sysdeps/i386/fpu/e_log2.S: Likewise.
	* sysdeps/i386/fpu/s_frexpf.S: Likewise.
	* sysdeps/i386/fpu/s_cexpl.S: Likewise.
	* sysdeps/i386/fpu/s_llrintf.S: Likewise.
	* sysdeps/i386/fpu/s_ilogb.S: Likewise.
	* sysdeps/i386/fpu/e_scalbl.S: Likewise.
	* sysdeps/i386/fpu/e_atanh.S: Likewise.
	* sysdeps/i386/fpu/e_log10.S: Likewise.
	* sysdeps/i386/fpu/s_cbrtf.S: Likewise.
	* sysdeps/i386/fpu/s_cexpf.S: Likewise.
	* sysdeps/i386/fpu/s_llrintl.S: Likewise.
	* sysdeps/i386/fpu/e_log10l.S: Likewise.
	* sysdeps/i386/fpu/s_nearbyint.S: Likewise.
	* sysdeps/i386/fpu/s_asinhl.S: Likewise.
	* sysdeps/i386/fpu/e_log2f.S: Likewise.
	* sysdeps/i386/addmul_1.S: Various fixes to cfi handling.
	* sysdeps/i386/mul_1.S: Likewise.
	* sysdeps/i386/strtok.S: Likewise.
	* sysdeps/i386/sub_n.S: Likewise.
	* sysdeps/i386/submul_1.S: Likewise.
	* sysdeps/i386/i586/addmul_1.S: Likewise.
	* sysdeps/i386/i586/memcpy.S: Likewise.
	* sysdeps/i386/i586/mul_1.S: Likewise.
	* sysdeps/i386/i586/rshift.S: Likewise.
	* sysdeps/i386/i586/sub_n.S: Likewise.
	* sysdeps/i386/i586/submul_1.S: Likewise.
	* sysdeps/i386/i686/memcmp.S: Likewise.
	* sysdeps/i386/i686/memmove.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise. 
						
						
					 
					
						2005-05-04 17:58:13 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						1ad9da69c6 
					 
					
						
						
							
							* sysdeps/i386/add_n.S: Add call frame information.  
						
						... 
						
						
						
						* sysdeps/i386/addmul_1.S: Likewise.
	* sysdeps/i386/bsd-setjmp.S: Likewise.
	* sysdeps/i386/lshift.S: Likewise.
	* sysdeps/i386/memchr.S: Likewise.
	* sysdeps/i386/memcmp.S: Likewise.
	* sysdeps/i386/mul_1.S: Likewise.
	* sysdeps/i386/rawmemchr.S: Likewise.
	* sysdeps/i386/rshift.S: Likewise.
	* sysdeps/i386/stpncpy.S: Likewise.
	* sysdeps/i386/strchr.S: Likewise.
	* sysdeps/i386/strchrnul.S: Likewise.
	* sysdeps/i386/strcspn.S: Likewise.
	* sysdeps/i386/strpbrk.S: Likewise.
	* sysdeps/i386/strrchr.S: Likewise.
	* sysdeps/i386/strspn.S: Likewise.
	* sysdeps/i386/strtok.S: Likewise.
	* sysdeps/i386/sub_n.S: Likewise.
	* sysdeps/i386/submul_1.S: Likewise.
	* sysdeps/i386/elf/bsd-setjmp.S: Likewise.
	* sysdeps/i386/i486/strcat.S: Likewise.
	* sysdeps/i386/i586/add_n.S: Likewise.
	* sysdeps/i386/i586/addmul_1.S: Likewise.
	* sysdeps/i386/i586/lshift.S: Likewise.
	* sysdeps/i386/i586/memcpy.S: Likewise.
	* sysdeps/i386/i586/memset.S: Likewise.
	* sysdeps/i386/i586/mul_1.S: Likewise.
	* sysdeps/i386/i586/rshift.S: Likewise.
	* sysdeps/i386/i586/strchr.S: Likewise.
	* sysdeps/i386/i586/strcpy.S: Likewise.
	* sysdeps/i386/i586/sub_n.S: Likewise.
	* sysdeps/i386/i586/submul_1.S: Likewise.
	* sysdeps/i386/i686/add_n.S: Likewise.
	* sysdeps/i386/i686/memcmp.S: Likewise.
	* sysdeps/i386/i686/memmove.S: Likewise.
	* sysdeps/i386/i686/mempcpy.S: Likewise.
	* sysdeps/i386/i686/memset.S: Likewise.
	* sysdeps/i386/i686/strtok.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/clone.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/semtimedop.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
	* sysdeps/i386/fpu/libm-test-ulps: Adjust for gcc 4. 
						
						
					 
					
						2005-05-04 06:22:30 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						a334319f65 
					 
					
						
						
							
							(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.  
						
						
						
						
					 
					
						2004-12-22 20:10:10 +00:00 
						 
				 
			
				
					
						
							
							
								Jakub Jelinek 
							
						 
					 
					
						
						
							
						
						0ecb606cb6 
					 
					
						
						
							
							2.5-18.1  
						
						
						
						
					 
					
						2007-07-12 18:26:36 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						a5392bed09 
					 
					
						
						
							
							Update.  
						
						... 
						
						
						
						2003-04-05  Roland McGrath  <roland@redhat.com >
	* sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
	below the stack pointer even if switching to the same context we are
	running right now.
	* catgets/gencat.c (read_input_file): Make sure that \n is not
	alone on the line before testing for continuation.
	* math/test-tgmath.c (compile_test): Initialize c. 
						
						
					 
					
						2003-04-05 22:03:35 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						097eca29e8 
					 
					
						
						
							
							Update.  
						
						... 
						
						
						
						* sysdeps/unix/sysv/linux/i386/pthread_once.S: Use ENTER_KERNEL instead
	of int $0x80.
	* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelcond.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelrwlock.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Add support for using
	sysenter.
	* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Likewise.
	* sysdeps/i386/tls.h: Unconditionally include <dl-sysdep.h>. 
						
						
					 
					
						2002-12-20 07:12:24 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						e14b144780 
					 
					
						
						
							
							Update.  
						
						... 
						
						
						
						* sysdeps/unix/sysv/linux/i386/getcontext.S: Don't touch the %gs
	register so that contexts can be used in different threads.
	* sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
	* sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise. 
						
						
					 
					
						2001-07-31 20:57:24 +00:00 
						 
				 
			
				
					
						
							
							
								Andreas Jaeger 
							
						 
					 
					
						
						
							
						
						41bdb6e20c 
					 
					
						
						
							
							Update to LGPL v2.1.  
						
						... 
						
						
						
						2001-07-06  Paul Eggert  <eggert@twinsun.com >
	* manual/argp.texi: Remove ignored LGPL copyright notice; it's
	not appropriate for documentation anyway.
	* manual/libc-texinfo.sh: "Library General Public License" ->
	"Lesser General Public License".
2001-07-06  Andreas Jaeger  <aj@suse.de >
	* All files under GPL/LGPL version 2: Place under LGPL version
	2.1. 
						
						
					 
					
						2001-07-06 04:58:11 +00:00 
						 
				 
			
				
					
						
							
							
								Ulrich Drepper 
							
						 
					 
					
						
						
							
						
						4ee87eccd9 
					 
					
						
						
							
							Update.  
						
						... 
						
						
						
						2001-04-07  Ulrich Drepper  <drepper@redhat.com >
	* sysdeps/unix/sysv/linux/i386/getcontext.S: New file.
	* sysdeps/unix/sysv/linux/i386/setcontext.S: New file.
	* sysdeps/unix/sysv/linux/i386/makecontext.S: New file.
	* sysdeps/unix/sysv/linux/i386/swapcontext.S: New file.
	* sysdeps/unix/sysv/linux/i386/ucontext_i.h: New file.
	* sysdeps/unix/sysv/linux/i386/Dist: Add ucontext_i.h. 
						
						
					 
					
						2001-04-07 20:09:42 +00:00