Commit Graph

104 Commits

Author SHA1 Message Date
Joseph Myers 2d68f6afef Fix MIPS64 posix_fadvise and posix_fadvise64.
Similar to the problems I fixed for posix_fallocate
<http://sourceware.org/ml/libc-ports/2008-12/msg00007.html> and
fallocate <http://sourceware.org/ml/libc-ports/2009-05/msg00031.html>,
MIPS64 posix_advise also needs fixes to use the correct syscall
interfaces.  Although the existing n32 posix_fadvise64 is OK, getting
posix_fadvise from syscalls.list does not work correctly, as this
function is supposed to return an error code instead of storing it in
errno as the generic syscall implementations from syscalls.list do.
2009-12-01 01:27:19 +00:00
Joseph Myers 84f926688b Update MIPS dl-lookup.c from generic version. 2009-12-01 00:07:32 +00:00
Joseph Myers b00ec94881 Use struct timespec for timestamps in struct stat for MIPS also if __USE_XOPEN2K8. 2009-11-23 19:06:52 +00:00
Joseph Myers 78698bbbf1 Define F_OWNER_PGRP for MIPS. 2009-11-19 16:46:57 +00:00
Joseph Myers 983ee7f269 Change misleading names of parameters of sync_file_range for MIPS. 2009-11-18 17:11:34 +00:00
Joseph Myers 24bcda036c Add new MADV_* values for MIPS. 2009-11-17 20:46:35 +00:00
Joseph Myers 87d2bea064 Define ERFKILL for MIPS. 2009-11-17 20:22:36 +00:00
Joseph Myers 37a907cc86 Fix F_SETOWN_EX and F_GETOWN_EX definitions for MIPS. 2009-11-14 22:40:19 +00:00
Joseph Myers 86ad0d12e1 Fix MIPS fallocate for -D_FILE_OFFSET_BITS=64.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h (fallocate): Fix types
	of last two arguments when -D_FILE_OFFSET_BITS=64.
2009-11-06 23:45:30 +00:00
Joseph Myers a896552ef1 Define F_OWNER_* and f_owner_ex for MIPS.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Define F_OWNER_* and
	f_owner_ex.
2009-10-29 16:51:55 +00:00
Joseph Myers afd09ae82a Define F_SETOWN_EX and F_GETOWN_EX for MIPS.
* sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Define F_SETOWN_EX
	and F_GETOWN_EX.
2009-10-03 17:39:53 +00:00
Daniel Jacobowitz f1297d79b2 Prevent GCC reusing "hi" and "lo" across system calls.
* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h
	(__SYSCALL_CLOBBERS): Add "hi" and "lo".
	* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h
	(__SYSCALL_CLOBBERS): Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h
	(__SYSCALL_CLOBBERS): Likewise.
2009-09-25 18:19:03 -04:00
Joseph Myers c67273d5b2 Signal stack support for MIPS ____longjmp_chk.
* sysdeps/mips/____longjmp_chk.c: Remove.  Replaced by....
	* sysdeps/unix/sysv/linux/mips/____longjmp_chk.c: This.  New file.
	* sysdeps/mips/__longjmp.c (__longjmp): Use explicit register
	variable for env.  Use expansion of CHECK_SP macro for check.
	* sysdeps/mips/mips64/__longjmp.c (__Longjmp): Likewise.
2009-08-05 21:02:50 +00:00
Joseph Myers 9d84a81fe9 Make accept4 for MIPS o32 avoid socketcall.
sysdeps/unix/sysv/linux/internal_accept4.S expects socket.S to be
present if __NR_socketcall is defined (which it is on MIPS o32, even
though there are separate syscalls as well) and __NR_accept4 isn't.
MIPS does not have socket.S, since it uses separate syscalls, but
though the accept4 syscall should be added soon present kernel headers
do not have it.  This patch creates a dummy internal_accept4.S for
MIPS o32, and an accept4.c wrapper that undefines __NR_socketcall so
that the main accept4.c falls back to the ENOSYS implementation if
__NR_accept4 isn't defined; it doesn't seem worthwhile to have a
special socketcall-based assembly implementation just for o32 on a few
kernels in the range between accept4 being available via socketcall
and the accept4 syscall being available.
2009-08-03 16:48:38 +00:00
Aurelien Jarno 197aec2596 Define __ASSUME_EVENTFD2 and __ASSUME_SIGNALFD4 for MIPS.
* sysdeps/unix/sysv/linux/mips/kernel-features.h: Define
	__ASSUME_EVENTFD2 and __ASSUME_SIGNALFD4.
2009-07-29 15:27:35 +00:00
Joseph Myers cda50f828e Update MIPS dl-lookup.c for changes to generic version.
* sysdeps/mips/do-lookup.h: Remove.
	* sysdeps/mips/dl-lookup.c: Update from generic version, with
	non-PIC handling integrated.
2009-07-17 20:39:04 +00:00
Joseph Myers 8200e168ef Define PF_IEEE802154 and AF_IEEE802154 for MIPS.
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Define PF_IEEE802154
	and AF_IEEE802154.
2009-06-18 22:04:19 +00:00
Joseph Myers 6a9f82ac93 ____longjmp_chk for MIPS.
* sysdeps/mips/____longjmp_chk.c: New file.
	* sysdeps/mips/__longjmp.c: If CHECK_SP is defined, use it.  Don't
	undefine __longjmp.
	* sysdeps/mips64/__longjmp.c: Likewise.
2009-05-16 22:24:56 +00:00
Joseph Myers d9056ac655 fallocate fixes for MIPS n32 and n64.
* sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate.c,
	sysdeps/unix/sysv/linux/mips/mips64/n32/fallocate64.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/fallocate64.c: New.
2009-05-16 17:42:10 +00:00
Joseph Myers c504ff3be9 Add fallocate64 export for MIPS.
* sysdeps/unix/sysv/linux/mips/Versions (libc): Add
	fallocate64@@GLIBC_2.11.
2009-05-16 14:30:47 +00:00
Joseph Myers 19afa98284 Fix MIPS n64 build failure with preadv64/pwritev64 aliases.
* sysdeps/unix/sysv/linux/mips/mips64/n64/preadv64.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/pwritev64.c: New files.
2009-05-14 22:24:35 +00:00
Joseph Myers ff3475331e 2009-04-18 Maciej W. Rozycki <macro@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/getcontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/makecontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/setcontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/swapcontext.S: New file.
	* sysdeps/unix/sysv/linux/mips/sys/ucontext.h (mcontext_t):
	Update comment.
	* sysdeps/unix/sysv/linux/mips/kernel_rt_sigframe.h: New file.
	* sysdeps/unix/sysv/linux/mips/ucontext_i.sym: New file.
	* sysdeps/unix/sysv/linux/mips/Makefile (gen-as-const-headers):
	Add ucontext_i.sym.
2009-04-18 17:32:04 +00:00
Joseph Myers 57d0274fe9 * sysdeps/unix/sysv/linux/mips/kernel-features.h (__ASSUME_PREADV,
__ASSUME_PWRITEV): Don't define here.
2009-04-18 14:08:18 +00:00
Joseph Myers 6db53cd548 2009-04-15 Maciej W. Rozycki <macro@codesourcery.com>
* sysdeps/mips/sys/fpregdef.h: Update for new ABIs.
2009-04-15 20:22:41 +00:00
Joseph Myers 70fdbfd956 * sysdeps/unix/sysv/linux/mips/bits/socket.h: Add missing protocol
numbers.
	* sysdeps/unix/sysv/linux/mips/sys/eventfd.h (EFD_SEMAPHORE):
	Define.
	* sysdeps/unix/sysv/linux/mips/kernel-features.h: Add entries for
	preadv and pwritev.
2009-04-09 22:14:47 +00:00
Joseph Myers d69fd0cbd2 2009-03-18 Maciej W. Rozycki <macro@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/readelflib.c (process_elf_file):
	Use the Elf32_Ehdr type to check for EF_MIPS_ABI2 in the flags.
2009-03-18 14:38:51 +00:00
Joseph Myers 0262d0c47c 2009-03-18 Zhang Le <r0bertz@gentoo.org>
[BZ #7074]
	* sysdeps/unix/sysv/linux/mips/readelflib.c (process_elf_file):
	Fix the condition used to annotate n32 objects.
2009-03-18 14:31:30 +00:00
Joseph Myers 4c8c18106e * sysdeps/unix/sysv/linux/mips/getsysstats.c (GET_NPROCS_PARSER):
Change parameters and use next_line.
2009-03-17 15:52:15 +00:00
Joseph Myers 340f797628 * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: Include errno.h.
* sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
2009-03-17 15:49:10 +00:00
Joseph Myers ad32d65a9f * sysdeps/mips/bits/link.h: Uglify function parameter names.
* sysdeps/unix/sysv/linux/mips/sys/cachectl.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/sys/eventfd.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/sys/sysmips.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/sys/tas.h: Likewise.
2009-03-15 16:54:26 +00:00
Joseph Myers 93311332ba * sysdeps/unix/sysv/linux/mips/bits/fcntl.h: Declare
fallocate{,64}.
2009-03-03 23:19:19 +00:00
Joseph Myers 2e3804efbf * sysdeps/unix/sysv/linux/mips/bits/stat.h: Protect UTIME_NOW and
UTIME_OMIT only with __USE_ATFILE.
2009-02-26 23:25:24 +00:00
Joseph Myers 1090d6bf10 [BZ #7040]
* sysdeps/unix/sysv/linux/mips/sys/inotify.h: Second parameter of
	inotify_rm_watch should have type int.
2009-02-13 17:38:50 +00:00
Joseph Myers 8085bd60e2 * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHM_EXEC): Define. 2009-02-02 15:36:15 +00:00
Daniel Jacobowitz 9290e55376 PR glibc/1048
* sysdeps/unix/sysv/linux/mips/dl-static.c: New file to support
	variable page size for MIPS.
	* sysdeps/unix/sysv/linux/mips/ldsodefs.h: Likewise.
	* sysdeps/unix/sysv/linux/mips/Makefile: Build dl-static in elf.
	* sysdeps/unix/sysv/linux/mips/Versions: Add _dl_var_init.
2009-01-27 15:32:55 +00:00
Joseph Myers e27433a869 * sysdeps/unix/sysv/linux/mips/bits/resource.h (enum
__rusage_who): Avoid comma after RUSAGE_CHILDREN if not
	-D_GNU_SOURCE.
2009-01-12 16:45:43 +00:00
Joseph Myers bb3b3056df * sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h: Define
FUTEX_CLOCK_REALTIME and FUTEX_BITSET_MATCH_ANY.
2009-01-12 16:38:17 +00:00
Joseph Myers 01aa93bd54 * sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate64.c,
sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fallocate.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate64.c,
	sysdeps/unix/sysv/linux/mips/mips64/n64/posix_fallocate.c: New.
2008-12-19 21:35:57 +00:00
Joseph Myers 64762db413 * sysdeps/unix/sysv/linux/mips/bits/socket.h (SCM_CREDENTIALS):
Make available only for __USE_GNU.
2008-12-09 23:53:33 +00:00
Joseph Myers 9a9863b435 * sysdeps/unix/sysv/linux/mips/nptl/lowlevellock.h: Define
FUTEX_WAIT_BITSET and FUTEX_WAKE_BITSET.
2008-12-03 23:37:48 +00:00
Joseph Myers 10d461b558 * sysdeps/unix/sysv/linux/mips/sys/signalfd.h (signalfd): Fix
__THROW vs. __nonnull order for C++.
2008-11-25 16:45:39 +00:00
Daniel Jacobowitz f6e40d3894 * sysdeps/mips/dl-dtprocnum.h (DT_MIPS_NUM): Do not redefine.
* sysdeps/mips/dl-machine.h (STO_MIPS_PLT, R_MIPS_COPY,
	R_MIPS_JUMP_SLOT, DT_MIPS_PLTGOT): Do not redefine.
2008-10-15 19:37:36 +00:00
Daniel Jacobowitz 63fb881a04 2008-10-01 Mark Shinwell <shinwell@codesourcery.com>
Daniel Jacobowitz  <dan@codesourcery.com>
	    Richard Sandiford  <rdsandiford@googlemail.com>

	* sysdeps/mips/dl-dtprocnum.h (DT_MIPS_NUM): Redefine.
	* sysdeps/mips/dl-lookup.c: New.
	* sysdeps/mips/do-lookup.h: New.
	* sysdeps/mips/dl-machine.h (ELF_MACHINE_NO_PLT): Remove
	definition.
	(STO_MIPS_PLT, R_MIPS_COPY, R_MIPS_JUMP_SLOT, DT_MIPS_PLTGOT): Define
	if needed.
	(ELF_MACHINE_JMP_SLOT): Alter definition and update comment.
	(elf_machine_type_class): Likewise.
	(ELF_MACHINE_PLT_REL): Define.
	(elf_machine_fixup_plt): New.
	(elf_machine_plt_value): New.
	(elf_machine_reloc): Handle jump slot and copy relocations.
	(elf_machine_lazy_rel): Point relocation place at PLT if
	required.
	(RESOLVE_GOTSYM): Take a relocation type argument.
	(elf_machine_got_rel): Bind lazy stubs directly to their target if
	!lazy.  Skip lazy binding for PLT symbols.
	(elf_machine_runtime_setup): Fill in .got.plt header.
	* sysdeps/mips/dl-trampoline.c (IFNEWABI): New macro.
	(ELF_DL_PLT_FRAME_SIZE, ELF_DL_PLT_SAVE_ARG_REGS,
	ELF_DL_PLT_RESTORE_ARG_REGS): Define.
	(_dl_runtime_pltresolve): New.
	* sysdeps/mips/bits/linkmap.h: New file.
	* sysdeps/mips/tls-macros.h: Load $gp as required.  Merge 32-bit and
	64-bit versions.

	* sysdeps/unix/sysv/linux/mips/mips32/sysdep.h (SYSCALL_ERROR_LABEL):
	Delete definition.
	* sysdeps/unix/sysv/linux/mips/nptl/sysdep-cancel.h (PSEUDO_CPLOAD,
	PSEUDO_ERRJMP, PSEUDO_SAVEGP, PSEUDO_LOADGP): Define.
	(PSEUDO): Use them.  Move outside __PIC__.
	(PSEUDO_JMP): New.
	(CENABLE, CDISABLE): Use it.
2008-10-01 13:28:14 +00:00
Joseph Myers a961a11ea2 * sysdeps/unix/sysv/linux/mips/sys/epoll.h: Change epoll_create2
to epoll_create1.
2008-08-19 16:53:11 +00:00
Joseph Myers 72e2fdef91 * sysdeps/unix/sysv/linux/mips/bits/socket.h: Define SOCK_CLOEXEC,
SOCK_NONBLOCK, PF_ISDN and AF_ISDN.
	* sysdeps/unix/sysv/linux/mips/sys/epoll.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/eventfd.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/inotify.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/signalfd.h: New file.
	* sysdeps/unix/sysv/linux/mips/sys/timerfd.h: New file.
2008-08-19 16:12:35 +00:00
Joseph Myers 606c1b1771 * sysdeps/mips/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Make asms
volatile.
2008-08-19 15:54:50 +00:00
Daniel Jacobowitz e2570f301f * sysdeps/mips/bits/setjmp.h (__jmp_buf): Give name to structure
type.
2008-07-18 13:24:21 +00:00
Daniel Jacobowitz 83d53ff1aa 2008-05-21 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/bits/socket.h: Cleanup namespace.
	(SOCK_DCCP): Define.
2008-05-21 17:50:58 +00:00
Daniel Jacobowitz 098cab74db 2008-05-01 Joseph Myers <joseph@codesourcery.com>
* sysdeps/unix/sysv/linux/mips/bits/resource.h: Define
	RUSAGE_THREAD and RUSAGE_LWP.
2008-05-01 12:34:13 +00:00
Daniel Jacobowitz 89e412f535 * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Fix comment describing
shmid_ds.

	* sysdeps/unix/sysv/linux/mips/bits/shm.h: Fix comment describing
	shmid_ds.
2008-04-21 15:45:00 +00:00