* sysdeps/powerpc/elf/libc-start.c: Make AUXVEC diddling code

conditional on [HAVE_AUX_VECTOR].

	* mach/mach/mach_traps.h (thread_switch, __thread_switch): Use
	mach_msg_timeout_t as type of final argument.

	* hurd/privports.c (__get_privileged_ports):
	Change host_priv_t to mach_port_t in argument type.
	* hurd/hurd.h (get_privileged_ports, __get_privileged_ports):
	Update decls.

	* sysdeps/mach/hurd/i386/bits/sigcontext.h: Protect from
	multiple inclusion.  Inhibit #error under [_SYS_UCONTEXT_H].
	* sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise.
	* sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
This commit is contained in:
Roland McGrath 2002-01-02 09:52:33 +00:00
parent d244fd7318
commit f58f41f1f4
10 changed files with 65 additions and 19 deletions

View File

@ -1,3 +1,23 @@
2002-01-02 Roland McGrath <roland@frob.com>
* sysdeps/powerpc/elf/libc-start.c: Make AUXVEC diddling code
conditional on [HAVE_AUX_VECTOR].
* mach/mach/mach_traps.h (thread_switch, __thread_switch): Use
mach_msg_timeout_t as type of final argument.
* hurd/privports.c (__get_privileged_ports):
Change host_priv_t to mach_port_t in argument type.
* hurd/hurd.h (get_privileged_ports, __get_privileged_ports):
Update decls.
* sysdeps/mach/hurd/i386/bits/sigcontext.h: Protect from
multiple inclusion. Inhibit #error under [_SYS_UCONTEXT_H].
* sysdeps/mach/hurd/alpha/bits/sigcontext.h: Likewise.
* sysdeps/mach/hurd/hppa/bits/sigcontext.h: Likewise.
* sysdeps/mach/hurd/mips/bits/sigcontext.h: Likewise.
* sysdeps/mach/hurd/powerpc/bits/sigcontext.h: Likewise.
2002-01-01 Roland McGrath <roland@frob.com>
* sysdeps/mach/hurd/errnos.awk: Tighten up device_types.h matching.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1993,94,95,96,97,98,99,2001 Free Software Foundation, Inc.
/* Copyright (C) 1993,94,95,96,97,98,99,2001,02 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -299,9 +299,9 @@ extern error_t hurd_sig_post (pid_t pid, int sig, mach_port_t refport);
other than the proc server (such as a bootstrap filesystem) can set
these variables to install the ports. */
extern kern_return_t __get_privileged_ports (host_priv_t *host_priv_ptr,
extern kern_return_t __get_privileged_ports (mach_port_t *host_priv_ptr,
device_t *device_master_ptr);
extern kern_return_t get_privileged_ports (host_priv_t *host_priv_ptr,
extern kern_return_t get_privileged_ports (mach_port_t *host_priv_ptr,
device_t *device_master_ptr);
extern mach_port_t _hurd_host_priv, _hurd_device_master;

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1993,94,97,2001 Free Software Foundation, Inc.
/* Copyright (C) 1993,94,97,2001,02 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -25,7 +25,7 @@ mach_port_t _hurd_host_priv, _hurd_device_master;
kern_return_t
__get_privileged_ports (host_priv_t *host_priv_ptr,
__get_privileged_ports (mach_port_t *host_priv_ptr,
device_t *device_master_ptr)
{
if ((host_priv_ptr && _hurd_host_priv == MACH_PORT_NULL)

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1994, 1996, 1997 Free Software Foundation, Inc.
/* Copyright (C) 1994,96,97,2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -26,6 +26,7 @@
#define _MACH_MACH_TRAPS_H_ 1
#include <mach/port.h>
#include <mach/message.h> /* mach_msg_timeout_t */
#include <mach/kern_return.h>
/* Create and return a new receive right. */
@ -64,8 +65,10 @@ extern boolean_t __swtch_pri (int priority);
milliseconds. If OPTION is SWITCH_OPTION_DEPRESS, then block for
TIME milliseconds and depress the thread's priority as done by
swtch_pri. If OPTION is SWITCH_OPTION_NONE, ignore TIME. */
kern_return_t thread_switch (mach_port_t new_thread, int option, int time);
kern_return_t __thread_switch (mach_port_t new_thread, int option, int time);
kern_return_t thread_switch (mach_port_t new_thread,
int option, mach_msg_timeout_t option_time);
kern_return_t __thread_switch (mach_port_t new_thread,
int option, mach_msg_timeout_t option_time);
/* Block the current thread until the kernel (or device) event
identified by EVENT occurs. */

View File

@ -1,5 +1,5 @@
/* Machine-dependent signal context structure for GNU Hurd. Alpha version.
Copyright (C) 1994, 1997 Free Software Foundation, Inc.
Copyright (C) 1994,97,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -17,10 +17,12 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SIGNAL_H
#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
#endif
#ifndef sc_alpha_thread_state
/* Signal handlers are actually called:
void handler (int sig, int code, struct sigcontext *scp); */
@ -67,3 +69,5 @@ struct sigcontext
double sc_fpregs[31]; /* Floating point registers $f0..$f30. */
long int sc_fpcsr; /* Floating point control/status register. */
};
#endif /* sc_alpha_thread_state */

View File

@ -1,5 +1,5 @@
/* Machine-dependent signal context structure for GNU Hurd. HPPA version.
Copyright (C) 1995, 1997 Free Software Foundation, Inc.
Copyright (C) 1995,97,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -17,10 +17,12 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SIGNAL_H
#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
#endif
#ifndef sc_parisc_thread_state
/* Signal handlers are actually called:
void handler (int sig, int code, struct sigcontext *scp); */
@ -88,3 +90,5 @@ struct sigcontext
/* Floating point registers $f0..$f31. */
double sc_fpregs[32];
};
#endif /* sc_parisc_thread_state */

View File

@ -17,10 +17,12 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SIGNAL_H
#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
#endif
#ifndef sc_pc
/* Signal handlers are actually called:
void handler (int sig, int code, struct sigcontext *scp); */
@ -114,3 +116,5 @@ struct sigcontext
/* Codes for SIGTRAP. */
#define DBG_SINGLE_TRAP 0x1 /* single step */
#define DBG_BRKPNT_FAULT 0x2 /* breakpoint instruction */
#endif /* sc_pc */

View File

@ -1,4 +1,5 @@
/* Copyright (C) 1994, 1997 Free Software Foundation, Inc.
/* Machine-dependent signal context structure for GNU Hurd. MIPS version.
Copyright (C) 1994,97,2001 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -16,10 +17,12 @@
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA. */
#ifndef _SIGNAL_H
#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
#endif
#ifndef sc_mips_thread_state
/* Signal handlers are actually called:
void handler (int sig, int code, struct sigcontext *scp); */
@ -73,3 +76,5 @@ struct sigcontext
int sc_fpcsr; /* FPU status register. */
int sc_fpeir; /* FP exception instruction register. */
};
#endif /* sc_mips_thread_state */

View File

@ -1,5 +1,5 @@
/* Machine-dependent signal context structure for GNU Hurd. PowerPC version.
Copyright (C) 1991, 1992, 1994, 1997 Free Software Foundation, Inc.
Copyright (C) 2001,02 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -17,10 +17,12 @@
write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef _SIGNAL_H
#if !defined _SIGNAL_H && !defined _SYS_UCONTEXT_H
# error "Never use <bits/sigcontext.h> directly; include <signal.h> instead."
#endif
#ifndef sc_pc
/* Signal handlers are actually called:
void handler (int sig, int code, struct sigcontext *scp); */
@ -74,3 +76,5 @@ struct sigcontext
unsigned int sc_fpscr_pad;
unsigned int sc_fpscr;
};
#endif /* sc_pc */

View File

@ -1,4 +1,4 @@
/* Copyright (C) 1998, 2000, 2001 Free Software Foundation, Inc.
/* Copyright (C) 1998,2000,01,02 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -72,12 +72,14 @@ BP_SYM (__libc_start_main) (int argc, char *__unbounded *__unbounded ubp_av,
argc = *(int *__unbounded) stack_on_entry;
ubp_av = stack_on_entry + 1;
ubp_ev = ubp_av + argc + 1;
#ifdef HAVE_AUX_VECTOR
auxvec = ubp_ev;
while (*(char *__unbounded *__unbounded) auxvec != NULL)
++auxvec;
++auxvec;
#ifndef SHARED
# ifndef SHARED
_dl_aux_init ((ElfW(auxv_t) *) auxvec);
# endif
#endif
rtld_fini = NULL;
}