Commit Graph

528 Commits

Author SHA1 Message Date
dyoung
166f28ddff Bump date for previous change. 2011-09-13 18:05:20 +00:00
dyoung
a156c8bc88 Name arguments in a couple of prototypes before the arguments are
referred to by name.
2011-09-13 18:04:54 +00:00
jym
b0471da334 Make strnlen(3) accessible in kernel. ok christos@. 2011-09-01 22:35:17 +00:00
plunky
a9b219be41 NULL does not need a cast 2011-08-31 15:48:32 +00:00
bouyer
4c44c335c5 loongson2f support:
- Add some loongson2 definitions to cpuregs.h, from OpenBSD
- Make sure that the at register is useable before every jump register
  instruction (exept when register is k0 or k1) because -mfix-loongson2f-btb
  needs the at register for its workaround
- add code to mips_fixup.c to handle the instructions added by
  -mfix-loongson2f-btb
- Add a ls2-specific tlb miss handler: it doesn't have separate handler
  for the xtlbmiss exeption.
- Fixes for some #ifdef MIPS3_LOONGSON2 assembly code (using the wrong
  register)
2011-08-27 13:23:52 +00:00
dyoung
c3c79645b1 Add ppath/ headers that I had overlooked. 2011-08-25 16:15:29 +00:00
wiz
181321739b Fix Nd argument. 2011-08-25 15:14:43 +00:00
wiz
b6947e90c0 Fix Dt argument, remove trailing whitespace, fix formatting nit. 2011-08-25 15:12:38 +00:00
dyoung
33ce21e27d Add sources, Makefiles, and manual pages for ppath(3), a
property-container path library that is usable from both userland and
the kernel.

TBD: hook this into the build, update set lists, and add automated
tests.
2011-08-25 14:55:36 +00:00
dholland
0a54ac30f5 Requires stdint.h. 2011-08-21 21:24:34 +00:00
christos
7ba3e6ca4b document non-literal format string 2011-08-16 10:33:17 +00:00
rmind
52b220e91d Add kcpuset(9) - a reworked dynamic CPU set implementation for kernel.
Suitable for use during the early boot.  MD and other implementations
should be replaced with this interface.

Discussed on: tech-kern@
2011-08-07 13:33:01 +00:00
jmcneill
2cfa4ad9b3 prop_dictionary_get_dict: last argument is prop_dictionary_t *, not bool * 2011-08-07 11:33:03 +00:00
mrg
baa3508234 add a weak alias to __ffssi2, needed for hppa gcc 4.5. 2011-08-07 01:52:47 +00:00
mrg
046047ef8e add a weak alias for __ffssi2 2011-07-09 14:57:29 +00:00
matt
1ab92ba04c Add long double prototypes. 2011-07-09 02:36:01 +00:00
joerg
b45fa494da ANSIfy 2011-07-04 21:20:27 +00:00
mrg
1866376e13 sh3 needs the __ffssi2 weak symbol, too. 2011-07-04 12:18:05 +00:00
mrg
259d2a08e1 add a weak alias from ffs to __ffssi2. newsmips kernels link now. 2011-07-04 11:35:26 +00:00
mrg
de4475a299 add support for __floatunsisf(). 2011-07-04 11:22:39 +00:00
mrg
88fcb00c03 add a weak alias from ffs to __ffssi2. sparc dynamic works with gcc 4.5 now. 2011-07-04 11:18:23 +00:00
matt
25ba5ff11d Update to C89 style.
Fix name of floatundidf (uns -> un).
2011-07-04 06:23:50 +00:00
matt
633cce5ea2 Add a weak symbol definition for __ffssi2 so that __builtin_ffs will use
this if no strong defintion of __ffssi2 is available.
2011-07-03 07:13:31 +00:00
mrg
493d341048 various build fixes for gcc 4.5. from chuq. XXX i'm not sure all of
these work properly wtf pointer aliasing, but there are no casts at
least...

the lib/libpuffs/puffs_priv.h is definately a real bug fix.

from chuq.
2011-06-20 09:11:16 +00:00
pgoyette
77494f64c2 Correct the example. 2011-06-19 08:53:02 +00:00
joerg
bdaa91a3a8 Add support for size optimised versions of the assembler functions in
the small subdirectory. Provide more compact versions of the functions
used by bootxx in x86.
2011-06-16 16:39:14 +00:00
bouyer
a3a7248ce7 Fix bad cut'n'paste in copyright. Pointed out by dyoung@ 2011-06-07 14:56:12 +00:00
tsutsui
aabb34a38b - WARNSfy
- KNF, ANSIfy, remove __P(), misc cosmetics
2011-05-19 22:23:12 +00:00
yamt
d93894081a radix_tree_clear_tag:
- fix a bug which errornously clears tags on intermediate nodes.
- add comments.
2011-05-19 10:06:56 +00:00
yamt
464de4ca7d radixtree: assertions 2011-05-19 10:01:21 +00:00
yamt
59a4821fb2 radixtree: comments 2011-05-19 10:00:30 +00:00
yamt
a8d2a6dea1 radixtree: comments 2011-05-19 09:58:28 +00:00
yamt
25dcdd54cb fix _STANDALONE build 2011-04-26 20:53:34 +00:00
martin
235708f88f Update also the non-void pointers to the current test objects.
Finaly fixes PR lib/43964.
2011-04-20 20:00:07 +00:00
martin
e40530ec28 Fix "address of a void*" vs. void* confusion.
Part of fixing PR lib/43964.
2011-04-20 19:40:00 +00:00
yamt
714ba23ee1 - fix _STANDALONE build.
- use __CTASSERT instead of CTASSERT.  enable it for userland.
- __read_mostly.
2011-04-14 15:42:02 +00:00
yamt
949aabf781 fix _STANDALONE build 2011-04-14 15:31:20 +00:00
matt
9b4a6fec19 Add RCSIDs 2011-04-12 16:19:44 +00:00
wiz
d6a06aa7e9 Fix a typo and a punctuation nit. 2011-03-27 22:44:47 +00:00
bouyer
d9210c2405 Add a new libquota library, which contains some blocks to build and/or
parse quota plists; as well as a getfsquota() function to retrieve quotas
for a single id from a single filesystem (whatever filesystem this is:
a local quota-enabled fs or NFS). This is build on functions getufsquota()
(for local filesystems with UFS-like quotas) and getnfsquota();
which are also available to userland programs.
move functions from quota2_subr.c to libquota or libprop as appropriate,
and ajust in-tree quota tools.
move some declarations from kernel headers to either sys/quota.h or
quota/quota.h as appropriate. ufs/ufs/quota.h still installed because
it's needed by other installed ufs headers.
ufs/ufs/quota1.h still installed as a quick&dirty way to get a code
using the old quotactl() to compile (just include ufs/ufs/quota1.h instead of
ufs/ufs/quota.h - old code won't compile without this change and this is
on purpose).
Discussed on tech-kern@ and tech-net@ (long thread, but not much about
libquota itself ...)
2011-03-24 17:05:39 +00:00
wiz
35124272d3 Remove duplicate "the". From Henning Petersen in PR 44640. 2011-02-26 12:56:35 +00:00
yamt
62e2ded66d an implementation of radix tree. the idea from linux. 2011-02-22 21:31:15 +00:00
pooka
f3da52f3a1 Add PIC variant for fetching the lock address.
librump.so now works on sparc
2011-02-22 18:45:10 +00:00
njoly
236d2fbff6 Fix section for umask xrefs. 2011-02-21 13:42:57 +00:00
plunky
340f952206 prop_dictionary_internalize_from_file_returns_a_dictionary_not_an_array 2011-02-02 16:37:27 +00:00
matt
c2f76ff004 Use END(sym)
use RCSID
2011-01-25 04:45:28 +00:00
matt
3c6f3faa1a Add a new O(log(2) implementation. On mips32/mips64, use clz/dclz. 2011-01-23 06:47:14 +00:00
bouyer
dc31d933b9 prop_*_copyout takes an object as second parameter, not a pointer to object. 2011-01-20 11:17:58 +00:00
wiz
3421828c26 Typos, wording. 2011-01-20 10:48:37 +00:00
wiz
7663d370d2 Add commas in enumerations. 2011-01-20 10:47:33 +00:00
wiz
bf94acf9f2 Sort sections. 2011-01-20 10:45:10 +00:00
wiz
22207ca7ad New sentence, new line. Use Dq. 2011-01-20 10:44:42 +00:00
wiz
75b38350f7 Remove trailing whitespace. 2011-01-20 10:42:19 +00:00
bouyer
07247bb748 - Implement prop_{array,dictionary}_copyout(), based on
prop_{array,dictionary}_copyout_ioctl().
- Implement prop_{array,dictionary}_recv_syscall(), which
  takes as parameter the pref we got from kernel and internalize it,
  and unmaps the buffer prop_{array,dictionary}_copyout() mapped for us.
- add a prop_{array,dictionary}_send_syscall() for symetry, which is
  an alias to prop_{array,dictionary}_externalize_to_pref()

Discussed on tech-kern@ and tech-userlevel@
2011-01-19 20:34:23 +00:00
joerg
13d8b2b89c Move SPARC and SPARC64 to modern CPP. Update UPDATING note for this and
Alpha.
2011-01-17 18:11:09 +00:00
skrll
a673bf604d Add an membar_ops.S - not used currently. 2011-01-17 07:40:21 +00:00
skrll
b095c54869 Tweak layout - no functional change. 2011-01-17 07:29:17 +00:00
skrll
0dec4d9c8e Fix RCSId. 2011-01-16 12:07:26 +00:00
matt
cf88c3890b Use END(foo) everywhere.
Make __cerror hidden.
Use non-PLT calls to __cerror.
Use assym.h when appropriate.
Use addi to adjust stack instead of loading it.
Add __RCSIDs
Force -D_NOREGNAMES for all .S files.
[this is all in preperation for secure plt support]
2011-01-15 07:31:11 +00:00
joerg
d3a052c472 Allow use of traditional CPP to be set on a per platform base in sys.mk.
Honour this for dependency processing in bsd.dep.mk.  Switch i386 and
amd64 assembly to use ISO C90 preprocessor concat and drop the
-traditional-cpp on this platform.
2011-01-12 23:12:10 +00:00
matt
1b9f1d30ee Make these 64-bit clean. 2011-01-02 02:58:52 +00:00
pooka
57ec646236 Use a consistent approach for rump kernel calls made by libs.
Should investigate a dynamic approach in the future.
2010-12-14 08:04:14 +00:00
tron
aacd5349be Provide proper namespace protection for rbtree(3) because it is now
used by "libc" internally.
2010-11-17 13:19:32 +00:00
matt
19e6c76b2d Rename rb.h to rbtree.h, as it is more appropriate (c.f. ptree.h). Also
helps find code that hasn't been updated to use the new rbtree API.
2010-09-25 01:42:38 +00:00
rmind
879d5dfb5e Fixes/improvements to RB-tree implementation:
1. Fix inverted node order, so that negative value from comparison operator
   would represent lower (left) node, and positive - higher (right) node.
2. Add an argument (i.e. "context"), passed to comparison operators.
3. Change rb_tree_insert_node() to return a node - either inserted one or
   already existing one.
4. Amend the interface to manipulate the actual object, instead of the
   rb_node (in a similar way as Patricia-tree interface does).
5. Update all RB-tree users accordingly.

XXX: Perhaps rename rb.h to rbtree.h, since cleaning-up..

1-3 address the PR/43488 by Jeremy Huddleston.

Passes RB-tree regression tests.
Reviewed by: matt@, christos@
2010-09-24 22:51:50 +00:00
rmind
380cb143e5 _cpuset_create: initialize size argument for sysctl call.
From PR/43837 by Sandy Snaman.
2010-09-21 02:03:29 +00:00
joerg
cf54378eb8 Fix rb_tree_iterate to get the min/max element of the tree for the
RBSMALL case.
2010-04-30 13:58:09 +00:00
joerg
1ccd7466c9 Fix warnings for -DRBSMALL 2010-04-28 17:23:33 +00:00
mrg
26c2cb31ec define _NOREGNAMES before including <machine/asm.h>, like powerpc does.
from dennis.c.ferguson@gmail.com in PR#43022.
2010-03-22 02:22:32 +00:00
uwe
6fc217346b Add memset to libkern on vax, moving existing memset.S to src/common.
While kernel source code is supposed to use <machine/macros.h> via
<sys/param.h> and pick an inline asm version from there, gcc itself
can generate direct calls to memset() for structure initialization, so
the symbol must be provided.

Fixes INSTALL kernel, for which -Os caused gcc to use memset() call to
initialize a struct in uvm_fault_internal().
2010-03-12 09:12:34 +00:00
wiz
8f657e21de Fix typo (specifed -> specified). 2010-02-18 14:00:39 +00:00
joerg
85b087f151 Fix unaligned access in *_Final for SHA224/SHA256/SHA384.
Remaining part of PR 42273. Tested by snj.
2010-01-24 21:11:18 +00:00
joerg
56da4fa7b5 Move AMD64's bswap64 implementation from libc to src/common and share it
with the kernel.
2010-01-14 02:09:46 +00:00
pooka
817cd31541 Don't export __ffstab, it's used only in this routine. This gets
rid of one of those evil common symbols in the __ namespace.

reviewed by martin
2009-12-19 19:09:48 +00:00
dholland
5934d74fc2 Add two missing functions to the SYNOPSIS. From Silas Silva in PR 42415. 2009-12-14 06:06:22 +00:00
dholland
d3b64ea665 Fix some ordering inconsistencies, noted by Silas Silva in PR 42415. 2009-12-14 06:03:23 +00:00
dholland
f57683f0c7 Minor wording fix/clarification (sending -> copying) from Silas Silva
in PR 42414.
2009-12-14 05:47:30 +00:00
matt
8daf714e68 Merge from matt-nb5-mips64 2009-12-14 00:38:59 +00:00
wiz
a7624277d5 Fix prop_dictionary_ensure_capacity signature, bump date.
From Silas Silva in PR 42413.
2009-12-05 10:17:17 +00:00
pooka
043ef3bc71 Use strong alias within the kernel namespace regardless of if we're
dealing with a hard or soft kernel (kernel linker doesn't support
weak symbols).
2009-11-26 07:40:34 +00:00
mbalmer
124961627e s/the the/the/ 2009-11-22 18:40:26 +00:00
dsl
8fee27ec00 Align to the destination buffer.
This probably costs 1 clock (on modern cpus) in the normal case.
But gives a big benefit when the destination is misaligned.
In particular when the source has the same misalignment - although
that may not be a gain on Nehalem!
Fixes PR/35535
2009-11-22 17:25:47 +00:00
dsl
a6f75e27d4 Avoid doing two 'rep movs' operations. 2009-11-21 19:52:54 +00:00
skrll
88855871f7 New binutils seems to want end of functions marked. 2009-11-09 14:22:02 +00:00
joerg
e51ee4c474 Fix unaligned access as reported in PR port-sparc/42273 2009-11-06 20:31:17 +00:00
joerg
0c6bb30e0c Improve portability and clarity by using uint8_t for the byte data
and expanding u_int to not depend on the !POSIX types.
2009-11-06 20:31:17 +00:00
bad
83bbd9b65d Back out previous. Builds for me and on autobuild cluster. 2009-10-11 12:13:45 +00:00
wiz
8b77bca163 Sort sections. New sentence, new line. 2009-10-11 01:55:28 +00:00
christos
44443bc42e make this compile again. 2009-10-10 21:27:46 +00:00
bad
133d41423c Commit changes to header files missed in my previous commit.
Implement prop_array_externalize_to_pref(), prop_array_copyin(),
prop_dictionary_externalize_to_pref() and prop_dictionary_copyin()
as discussed in the thread:
http://mail-index.netbsd.org/tech-kern/2009/07/29/msg005594.html

Add prototypes for prop_array_externalize_to_pref() and
prop_dictionary_externalize_to_pref().
2009-10-10 21:26:16 +00:00
bad
6947118ad3 Implement prop_array_externalize_to_pref(), prop_array_copyin(),
prop_dictionary_externalize_to_pref() and prop_dictionary_copyin()
as discussed in the thread:
http://mail-index.netbsd.org/tech-kern/2009/07/29/msg005594.html

Bump libprop shlib minor.
2009-10-10 18:06:53 +00:00
pooka
fbd53556dc Wipe out the last vestiges of POOL_INIT with one swift stroke. In
most cases, use a proper constructor.  For proplib, give a local
equivalent of POOL_INIT for the kernel object implementation.  This
way the code structure can be preserved, and a local link set is
not hazardous anyway (unless proplib is split to several modules,
but that'll be the day).

tested by booting a kernel in qemu and compile-testing i386/ALL
2009-09-13 18:45:10 +00:00
skrll
2ebfea6c79 __strong_alias(foo,foo) is... pointless. 2009-08-21 14:31:02 +00:00
skrll
b1aca4e8f5 Don't define weak aliases if _STANDALONE. 2009-08-21 09:40:51 +00:00
joerg
0c2684fa82 Fix a comment to not be self-referencing. 2009-08-05 15:04:15 +00:00
dsl
d582bd909a In the misaligned case, xor the read word with the target pattern
before making the unwanted bytes non-zero.
Means that memchr(buf, 0xff) is no longer a special case.
2009-08-01 20:47:02 +00:00
dsl
170e962b6c Remove some long dependant instruction sequences (ie allow parallel code).
Since 'rep stos' will have a long setup time, avoid doing it more than once.
For misaligned (start address or length) write an unaligned word at both
ends of the buffer then aligned 'rep stosd' the middle.
Use the same code for bzero().
bzero.S is left being compiled for a while (empty) - to avoid issues with
duplicate symbols in libc.a after update builds.
2009-08-01 20:35:45 +00:00
drochner
8e73e87c59 remove stray semicolons, makes lint happy and lets the libc build proceed 2009-07-21 19:56:55 +00:00
joerg
11e383c9e8 Include limits.h. 2009-07-21 17:37:51 +00:00
joerg
cb19415914 Make the constant u_longlong too, lint is just too stupid... 2009-07-21 17:14:12 +00:00