summaryrefslogtreecommitdiffstats
path: root/lib/libc/arch/m88k/sys (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Actually m88k assembler can not handle 'nop' mnemonic, use a macro instead.aoyama2020-11-071-2/+4
| | | | ok deraadt@
* SYS___threxit cannot fail, but this integration looks like a gadget.deraadt2020-10-181-1/+3
| | | | | Put a hard-trap instruction after the syscall instruction. ok kettenis mortimer
* Add add PIE support for m88k (requires gcc4 toolchain)guenther2018-06-161-1/+3
| | | | | | Convert __cerror to hidden visibility. from miod@
* Simplify __cerror now that %r27 is always the TCB pointer.guenther2016-09-221-26/+14
| | | | | | | Don't need a PLT relocation for __cerror. Move macros for doing internal aliases in ASM from SYS.h to DEFS.h __cerror tweaks by Miod Vallat, testing by aoyama@
* Remove sigreturn declaration and the now-unused libc syscall stubguenther2016-05-091-42/+0
|
* Use a Thread Information Block in both single and multi-threaded programs.guenther2016-05-074-62/+35
| | | | | | | | | | | | | | | | | This stores errno, the cancelation flags, and related bits for each thread and is allocated by ld.so or libc.a. This is an ABI break from 5.9-stable! Make libpthread dlopen'able by moving the cancelation wrappers into libc and doing locking and fork/errno handling via callbacks that libpthread registers when it first initializes. 'errno' *must* be declared via <errno.h> now! Clean up libpthread's symbol exports like libc. On powerpc, offset the TIB/TCB/TLS data from the register per the ELF spec. Testing by various, particularly sthen@ and patrick@ ok kettenis@
* Merge the sigaction() and sigprocmask() overloads/wrappers from libpthreadguenther2015-10-231-3/+3
| | | | | | | | | into libc, and move pthread_sigmask() as well (just a trivial wrapper). This provides consistent handling of SIGTHR between single- and multi-threaded programs and is a step in the merge of all the libpthread overloads, providing some ASM and Makefile bits that the other wrappers will need. ok deraadt@ millert@
* Adds hidden _libc_FOO aliases for the system call stubs.guenther2015-09-106-17/+22
| | | | | | | | | | Stop generating _brk and _sbrk symbols: they've already been hidden. Set the ELF symbol size on the syscall stubs. Give the __{min,cur}brk symbols a size and type, and hide more jump labels. alpha, arm, m88k, sh, sparc, and vax assistance miod@ hppa assistance kettenis@ ok deraadt@ miod@
* Hide many (194!) symbols that nothing should be using.guenther2015-08-263-49/+11
| | | | | | | Delete exect(2); it wasn't portable across archs and nothing used it. ports test build by naddy@ ok deraadt@ kettenis@
* Make pthread_atfork() track the DSO that called it like atexit() does,guenther2015-04-071-2/+3
| | | | | | | | | | unregistering callbacks if the DSO is unloaded. Move the callback handling from libpthread to libc, though libpthread still overrides the inner call to handle locking and thread-library reinitialization. Major version bump for both libc and libpthread. verification that this fixes various ports ajacoutot@ asm assistance miod@; ok millert@ deraadt@
* Simplify fork/vfork logic: the kernel has handled returning zero in the childguenther2015-03-311-10/+2
| | | | | | | for a long time, so there's no need to test the second return register here in the asm stub. ok and testing of many archs by krw@ miod@
* Remove the `let's zero %r2 if %r3 is nonzero' dance. It's been more than 10miod2013-09-081-10/+2
| | | | | years that fork() returns through child_return(), which takes care of zeroing %r2.
* Oops, due to the way return from system calls work, we can not use a delaymiod2013-01-242-6/+16
| | | | | | slot in the branch to cerror, for the delay slot instruction would also run as part of a successful return. Doh. Fortunately almost nothing in the tree uses brk() or sbrk() anymore... but binaries linked against libiberty.
* The kernel sources mention that the system call entry point is trap #450; themiod2013-01-238-17/+17
| | | | | fact that #128 and #129 may also be used for this purpose was never documented, so there is no reason to have libc use #128. Switch to #450 for consistency.
* Add END() directives to the various functions.miod2013-01-1112-22/+92
| | | | | | Make the code PIC-aware when necessary (i.e. invoke other functions through the PLT, and access global data through the GOT). No change for non-PIC compilation.
* fix __cerror non-weak symbol namemiod2013-01-081-2/+2
|
* Switch m88k ports to ELF.miod2013-01-0512-86/+86
|
* Actually invoke the system call in libc's sigreturn() wrapper; went unnoticedmiod2012-12-261-4/+3
| | | | for 15 years or so (sigcode, of course, was correct).
* these are no longer used; ok guentherderaadt2012-09-041-39/+0
|
* __tfork() needs to set the stack address of the new thread in the kernel,guenther2012-06-211-5/+3
| | | | | | | | | so that it can't get a signal while still running on the parent thread's stack. Also, pass in sizeof(struct __tfork) to provide forward compat when more members are added. This is an ABI change, so switch syscall numbers and bump lib majors this time. ok deraadt@ matthew@
* remove rfork(); ok guenther miodderaadt2012-04-121-45/+0
|
* Move __tfork_thread() from rthreads (libpthread) to libc so thatguenther2012-03-221-0/+55
| | | | | | it can be used for not-strictly-threading purposes ok matthew@ kurt@
* On the a.out architectures, WEAK_ALIAS does an implicit _C_LABEL()deraadt2011-04-091-2/+2
| | | | ok miod
* Move __cerror to ___cerror with a weak alias so that rthreads can override it.guenther2011-04-041-2/+4
| | | | | | On mips64, also correct the name called from plain cerror to __cerror. "looks correct" miod@
* Change the syscall invocation sequences to no longer fetch the last fewmiod2007-10-241-4/+1
| | | | | | | | | | arguments from the stack, since the kernel will now copyin() them when necessary. This makes all system calls (but mmap()) slightly faster. WARNING! After this commit, your binaries must run against a kernel featuring m88k/m88k/trap.c r1.34 or better - i.e. a 4.1 or later kernel.
* zap rcsid.espie2005-08-0713-78/+13
| | | | okay deraadt@ (tested them all)
* Update stack frame processing after ABI change.miod2004-07-281-5/+5
|
* Use an unsigned comparison against minbrk.miod2003-12-251-7/+6
| | | | ok deraadt@
* Speed up sbrk() one cycle by removing an unnecessary register shuffling.miod2003-12-191-4/+3
|
* OR r13, not r9 to match SYS.h; fixes syscall(2) on mvme88k; OK miod@millert2003-12-081-3/+3
|
* Only a clown like me could put cerror in the data section by mistake...miod2003-10-161-4/+3
|
* These files are not necessary anymore.miod2003-09-011-45/+0
|
* Remove the advertising clause in the UCB license which Berkeleymillert2003-06-0214-98/+42
| | | | rescinded 22 July 1999. Proofed by myself and Theo.
* duplicate words and spelling fixes in commentsdavid2003-03-101-3/+3
| | | | ok miod@
* Waiter! I asked for a working vfork!miod2003-01-161-3/+3
|
* Get static rcsid correctly, better style for .S files, trim whitespace.miod2003-01-0714-98/+71
|
* Adapt to recent changes in libc/libc_r wrt weak symbols, so that programsmiod2003-01-025-15/+15
| | | | | | | can link against libc without unresolved symbols again. Anyone who correctly guessed that my m88k hard drive has been recovered, wins a strawberry lollipop.
* Rename cerror to __cerror and curbrk to __curbrk, to avoid namespacemiod2003-01-028-37/+38
| | | | pollution. Conforming to art@'s evil plans.
* rfork() needs a fork.S-like stub as well; ok artderaadt2002-02-171-0/+56
|
* $OpenBSD$todd2000-03-0113-13/+39
|
* replacement pipe() system call; copies data into place inside kernel, soderaadt1999-06-071-55/+0
| | | | that EFAULT return value is possible
* Fixed brk() and sbrk(). Removal of old mvme88k dir.smurph1999-02-092-8/+5
|
* mi ptraced1999-02-011-55/+0
|
* correted sigsetjmp, setjump. Fixed MACHINE_ARCH vs. MACHINE stuff.smurph1998-12-1515-0/+845