Commit Graph

550 Commits

Author SHA1 Message Date
christos dae8727ffb split udivsi3 and divsi3 to fix static linking. This could be done better. 2012-10-30 12:42:13 +00:00
chs 1957a22d40 _ARCH_ARM_6 -> _ARM_ARCH_6 2012-10-29 14:09:38 +00:00
christos 91f0e20769 Split out modsi3 and umodsi3 from the divsi3 file. This is so that
we don't get re-defined symbols in libc from libgcc in static linking.
Example: cc -pthread -static main-calls-pthread-create.c
2012-10-10 02:16:54 +00:00
matt b40d79bcfb Add a ptree_mask_node_p to determine if an item is a mask node, and what
its non-mask length is.
2012-10-06 22:15:09 +00:00
matt 6e8da97cc9 Correct copyright/fix comments. 2012-09-13 00:36:12 +00:00
matt 56a54cbe85 Fix bas code, use ldr 2012-09-12 18:23:33 +00:00
matt b9b9bd8933 Add 64bit atomic ops for ARMv6+ (using ldrexd/strexd). 2012-09-11 20:51:25 +00:00
matt 36f83f6caf Add dmb/dsb instructions as required by the armv7 arch man. 2012-08-31 23:41:52 +00:00
drochner 8588929dc5 Add "consttime_bcmp" and "explicit_bzero" functions for both kernel
abd userland, as proposed on tech-security, with explicit_bzero using
a volatile function pointer as suggested by Alan Barrett.
Both do what the name says. For userland, both are prefixed by "__"
to keep them out of the user namespace.
Change some memset/memcmp uses to the new functions where it makes
sense -- these are just some examples, more to come.
2012-08-30 12:16:48 +00:00
matt 85e052c5bf Actually use the assembly version of the atomic function if compiling
for armv6 or armv7 cpus.  Use atomic_cas_ptr instead of _lock_cas so
we pick up the assembly version when it's used.
2012-08-16 16:49:10 +00:00
matt e2b9512b7a Add ARM EABI aliases to a few functions. 2012-08-06 02:31:54 +00:00
matt e525b93aa7 Change include to <arm/aeabi.h> 2012-08-06 02:15:51 +00:00
matt 08b1727f06 Add long long / unsigned long long comparision routines. These differ
from cmpdi2 in they return strcmp like values (-1, 0, 1).
2012-08-06 01:50:30 +00:00
matt 222a0a07b3 Add RCSID.
Simplify.
2012-08-05 06:34:09 +00:00
matt c5be335689 Add another ARM EABI runtime routine for
combined quotient / remainder for signed long long.
2012-08-05 06:33:51 +00:00
matt fd8b39a588 Add a routine for __aeabi_uldivmod which is just a wrapper around __qdivrem
but returns the 64-bit dividend and remainder in r0-r3.
2012-08-05 04:24:13 +00:00
matt 59f5e05f96 For __udivsi3 and __divsi3, add their EABI aliases as alternate entry
points.
2012-08-05 04:22:01 +00:00
matt e8a22c6586 Add a missing .set noreorder 2012-08-03 06:06:44 +00:00
pooka c303bcbe4c Bit-un-rot the proplib portability layer. 2012-07-27 09:10:59 +00:00
rmind 4c826f2231 ptree_find_filtered_node: make key argument const. 2012-07-15 00:16:28 +00:00
matt 84b1adeab7 Add code to protect the ptree from multiple insertions of the same node. 2012-07-14 18:16:54 +00:00
matt 87ed7965fb Don't bother testing 0 length keys since they can only have one possible value. 2012-07-13 01:15:27 +00:00
rmind 61498e07d3 ptree: add context argument. OK matt@ 2012-07-11 00:19:28 +00:00
christos d290d1674e Fix kernel compilation: no namespace.h
Fix libc RCSID protection.
Remove useless cast.
2012-07-10 17:05:38 +00:00
rmind 6461e5c133 Add weak symbol for murmurhash2. 2012-07-09 21:25:46 +00:00
rmind 5811facfd9 Shut up lint. 2012-07-08 13:42:29 +00:00
rmind ea196989a7 Add MurmurHash2 -- a non-cryptographic hash function by Austin Appleby.
The code is taken from the upstream and is in the public domain.

OK christos@
2012-07-08 01:21:11 +00:00
christos 062204d530 fix lint comment. 2012-04-07 16:28:59 +00:00
christos 834d97b095 lint knows the code is not reachable, but gcc does not. 2012-04-07 16:18:24 +00:00
christos de149fb70f bring the casts to the operands, not the operation results. 2012-03-22 15:57:29 +00:00
he 2fa47ecfcb Lint seems to prefer that we cast via (void*) and not directly to
(u_char*), so follow suit.
2012-03-21 20:02:56 +00:00
matt 567219e1d7 Remove __P usage.
Convert to C89 prototypes.
2012-03-20 16:21:41 +00:00
martin 4eb2215803 shut up lint 2012-03-17 21:40:21 +00:00
martin 9328833c03 Mark linted 2012-03-17 20:57:35 +00:00
njoly d0e00679ff Use Lk macro when dealing with URLs. While here update or remove some
dead URL links. Another part of PR/29238.
2012-03-15 22:35:02 +00:00
christos 32c2c5c3f9 don't include <sys/cdefs.h> from assembly. 2012-03-14 16:50:34 +00:00
christos a5fd370a21 Casts and type changes to fix portability issues.
- int -> size_t
- adjust width of RHS of shift
- adjust widths of types
2012-03-09 15:41:16 +00:00
apb aaa101ee8d remove trailing white space 2012-03-02 16:22:27 +00:00
apb 2953114330 Change CTASSERT to __CTASSERT (the spelling used in <sys/cdefs.h>),
include <sys/cdefs.h> so that it will be defined,
and move it to a better place.

The previous CTASSERT would never have been used because
of the ifdef.  If it had been used, it would have had
unwanted effects from being just after the "static inline"
that appears when BZERO is defined.

Also move the __RCSID to a more conventional location.
2012-03-02 16:19:15 +00:00
joerg 76acd27422 Make sure to create the right aliases. 2012-02-28 20:41:19 +00:00
dholland 7609b9bc56 Migrate one last leftover bit (used only by the kernel now) to
sys/ufs/ufs and remove the old quota headers and no-longer-used shared
code. Ok by releng.
2012-02-05 14:19:02 +00:00
dholland 4146833dd8 Remove old (5.99.48 - 5.99.62) libquota interface. 2012-02-01 17:52:07 +00:00
dholland 59b296daa7 Change the syscall API for quotas over to the new non-proplib one.
- struct vfs_quotactl_args -> struct quotactl_args
   - add sys/stdint.h to sys/quotactl.h for clean userland build
   - install sys/quotactl.h in /usr/include
   - update set lists for same
   - add new marshalling code in libquota
   - add new unmarshalling code in vfs_syscalls.c
   - discard proplib interpreter code in vfs_quotactl.c
   - add dispatching code for the 14 quotactl ops in vfs_quotactl.c
   - mark the proplib quotactl syscall obsolete
   - add a new syscall number for the new quotactl syscall
   - change the name of the syscall to __quotactl()
   - remove the decl of the old quotactl from quota/quotaprop.h
   - add a decl of the new quotactl to sys/quotactl.h
   - update the libc build
   - update ktruss
   - remove proplib marshalling code from libquota
   - update copy of syscall table in gdb ppc sources
   - hack rumphijack to accomodate new quotactl name (as I recall,
     pooka wanted such a name change to simplify something, but I
     don't really see what/how)

This change appears to require a kernel version bump for rumpish
reasons.
2012-02-01 05:34:38 +00:00
christos df956cc4ce also handle the separator after the F field. 2012-01-23 03:22:41 +00:00
christos c1260ab13f In the new format F did not print a separator as required. 2012-01-23 02:34:01 +00:00
joerg e8bec33be1 Change CMSG_SPACE and CMSG_LEN to provide Integer Constant Expressions
again. This was changed in sys/socket.h r1.51 to work around fallout
from the IPv6 aux data migration. It broke the historic ABI on some
platforms. This commit restores compatibility for netbsd32 code on such
platforms and provides a template for future changes to the CMSG_*
alignment. Revert PCC/Clang workarounds in postfix and tmux.
2012-01-20 14:08:04 +00:00
christos 488f092662 PR/45796: Evgeniy Ivanov minixfs3 support. 2012-01-16 18:46:20 +00:00
dholland 51d1d7e7c4 Rename struct ufs_quota_entry -> struct quotaval. 2011-11-25 16:55:05 +00:00
dholland c60360c18d Reshuffle decls among the quota headers so everything is in the place
it should be:
   - stuff for the proplib interface goes in <quota/quotaprop.h>
   - stuff for userlevel only goes in <quota/quota.h>
   - stuff shared between user and kernel goes in <sys/quota.h>

Note that <quota/quota.h> and <quota/quotaprop.h> are expected to be
moved or removed later on... one thing at a time.

Update include directives in other files as needed.
2011-11-20 21:43:34 +00:00
christos 28bb169a57 compile into nothing if _STANDALONE 2011-11-14 16:21:44 +00:00