summaryrefslogtreecommitdiffstats
path: root/sys/lib (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* same bcopy/memmove/memcpy methodology for vax.deraadt2013-06-133-158/+19
| | | | checked over by mlarkin
* merge bcopy/memmove/memcpy into one file, with jumps so that it is morederaadt2013-06-133-3/+113
| | | | | | likely to be in the cache (like how the explanation is split between multiple commits?) tested by various
* merge memcpy/memmove/bcopy into one file, with sub-jumps.deraadt2013-06-133-3/+271
| | | | ok .... I guess noone, because it is summer
* merge bcopy/memcpy/memmove into one function.deraadt2013-06-133-104/+89
| | | | ok mlarkin tedu
* From now on, the MI libkern memcpy should not do overlap handling.deraadt2013-06-121-16/+4
|
* regenkettenis2013-06-111-45/+45
|
* Optimize memcpy(9) by always doing a forward copy; it should never be usedkettenis2013-06-111-9/+9
| | | | | | | | for overlapping copies. Attempt to be instruction cache friendly by turning things around and make memcpy(9) use the forward copy branch of memmove(9), and implement bcopy(9) by swapping its arguments and dropping into memmove(9). Same change as the one just made to for hppa.
* remove ovbcopy supportderaadt2013-06-1114-20/+0
| | | | ok kettenis
* regenkettenis2013-06-111-43/+43
|
* Optimize memcpy(9) by always doing a forward copy; it should never be usedkettenis2013-06-111-9/+9
| | | | | | | | for overlapping copies. Attempt to be instruction cache friendly by turning things around and make memcpy(9) use the forward copy branch of memmove(9), and implement bcopy(9) by swapping its arguments and dropping into memmove(9). ok deraadt@
* portable memmove(), for if an architecture lacks a custom optimizedderaadt2013-06-111-0/+53
| | | | version.
* Add CTASSERT macro, for compile time assertionssf2013-06-081-1/+4
| | | | ok kettenis@
* Add {,u}{div,mod}si3 to libkern and to the kernel as well.miod2013-06-074-0/+195
|
* fix an oft copied typo that i'm tired of looking attedu2013-06-0339-39/+39
|
* UFS does't do inode numbers >2^32, so use a smaller type internally,guenther2013-05-301-9/+9
| | | | | | | only using ino_t in the VFS layer APIs: vget, readdir, getattr. otto wrote the original diff for libsa to keep bootblock from overflowing ok deraadt@ kettenis@
* Fix kernel profiling on MP systems by using per-CPU buffers and teachmpi2013-03-121-8/+16
| | | | | | | | | | | kgmon(8) to deal with them, this time without public header changes. Previously various CPUs were iterating over the same global buffer at the same time to modify it and never ended. This diff includes some ideas submited by Thor Simon to NetBSD via miod@. ok deraadt@, mikeb@, haesbaert@
* Back out per-CPU kernel profiling, it shouldn't modify a public headermpi2013-02-121-16/+8
| | | | at this moment.
* Fix kernel profiling on MP systems by using per-CPU buffer. Previouslympi2013-02-111-8/+16
| | | | | | | | | various CPUs were iterating over the same global buffer at the same time to modify it and never ended. This diff includes some ideas submited by Thor Simon to NetBSD via miod@. ok mikeb@, haesbaert@
* Kernel bits for m68k/ELF, mostly from NetBSD. In addition, the `pmod' symbelmiod2013-02-0213-163/+163
| | | | in fpsp has to be renamed due to a clash with other parts of the kernel.
* replace __attribute__((unused)) with __used, which will be defined to thedlg2013-01-161-6/+2
| | | | | | | | | right thing for whichever compiler we use. found while trying to build a profiled kernel on sparc64. solution found by guenther and refined by miod and kettenis. ok guenther@ kettenis@
* Move exec() libsa prototype to hp300 stand, now that it can no longer bemiod2013-01-071-2/+1
| | | | found in libsa.
* Switch m88k ports to ELF.miod2013-01-052-200/+200
|
* Remove libsa exec.c, not used by anything anymore; all boot blocks now usemiod2013-01-012-181/+2
| | | | loadfile or a derivative of.
* Remove unused XCPPFLAGS.miod2013-01-012-5/+3
|
* Remove excessive sys/cdefs.h inclusionderaadt2012-12-057-15/+8
| | | | ok guenther millert kettenis
* Provide standalone versions of AES, AES XTS, HMAC SHA1, PBKDF2 and SHA1.jsing2012-10-0910-0/+1856
|
* Provide an explicit_bzero for standalone usage.jsing2012-10-092-7/+21
|
* bye bye SCCSderaadt2012-07-133-14/+2
|
* Add strnlen() to libkern.matthew2012-04-262-1/+38
| | | | ok deraadt
* Remove assembly version of strlen from i386 and amd64, where it'smikeb2012-01-172-38/+0
| | | | | | | up to 3 times slower than the C code most of the time. This was brought up by DragonflyBSD guys initially. ok deraadt, guenther. miod will not miss it.
* Regen.kettenis2011-11-272-68/+68
|
* Switch to proper PA-RISC 2.0 mnemonics. Works around a bug in the assemblerkettenis2011-11-271-22/+22
| | | | getting rid of the (hopefully) last bug in this code.
* Regen.kettenis2011-11-271-3/+3
|
* Fix return value of memcpy.kettenis2011-11-271-4/+3
|
* Oops, jsing@ changed spcopy.S without realizing that that file is generatedkettenis2011-11-271-7/+3
| | | | from bcopy.m4. Fix that.
* Regen.kettenis2011-11-272-41/+40
|
* Replace a few more 32-bit instructions with the proper 64-bit equivalent.kettenis2011-11-271-22/+21
| | | | | Also fix the return value of memcpy. With these changes, this seems to work as advertised now.
* Oops, forgot to remove that reference to now dead saioctl.hmiod2011-09-201-2/+1
|
* Remove unused libsa error code and descriptions. Anything shrinkingmiod2011-09-202-7/+2
| | | | boot blocks is worth having.
* Remove unused file before deranged boot blocks writer get ideas from it.miod2011-09-201-49/+0
|
* Regen.kettenis2011-09-192-4/+4
|
* Avoid sign-extension when extracting the low bits of addresses when checkingkettenis2011-09-191-3/+3
| | | | | | if the addresses are 4-byte aligned. ok jsing@
* we need to alias __movstr* as __movmem* for gcc4jsg2011-07-191-2/+2
| | | | from NetBSD. ok miod@ drahn@
* Make the updated zlib compile with a debug kernel.jsing2011-07-164-28/+28
| | | | ok deraadt@
* Replace the cruddy old sys/net/zlib.[ch]. We now use the sys/lib/libzderaadt2011-07-0712-10/+3853
| | | | | | | | | | | | code. Missing chunks of the API are imported from the libc version, with a few #ifdef's to port it into the kernel environment. The bootblocks already used the newer code, and should encounter no surprises since there are so few changes to the existing files. In the kernel, ipcomp and kernel ppp are changed to the new API. ipcomp has been tested. ok tedu the brave
* Do not leak memory if ufs_open() fails; reported by and ok martynas@miod2011-05-281-6/+13
|
* Regen.jsing2011-04-142-9/+9
|
* Use 64-bit operations for address manipulation.jsing2011-04-141-4/+4
|
* Correctly load p_addr and avoid trashing the source address.jsing2011-04-141-4/+4
|
* Change daddr_t to daddr32_t. The bootblocks on our architectures onlyderaadt2011-03-135-21/+21
| | | | | | | do 32-bit block spanning. If later on we get some that can/should do 64-bit, that can be done now using daddr64_t (but of course, we are taking this step to finalize the daddr_t 64-bit conversion). ok miod krw