bluhm [Mon, 18 Aug 2014 21:53:40 +0000 (21:53 +0000)]
Make out of band data tests more reliable. As multiple tcp urgent
bytes cannot be handled correctly, allow another variation.
bluhm [Mon, 18 Aug 2014 21:51:45 +0000 (21:51 +0000)]
Make the forking tests more reliable. During copy the read(2)
system call might fail with EAGAIN when the other forked process
has already read the data.
bluhm [Mon, 18 Aug 2014 21:49:17 +0000 (21:49 +0000)]
Make the multiple UDP packet test more reliable. The receive buffer
limit also counts the mbufs in it, so packets could be dropped.
Increase both send and receive socket buffer size.
bluhm [Mon, 18 Aug 2014 21:43:45 +0000 (21:43 +0000)]
Add test cases for multiple small HTTP requests. Many PUT requests
with ony byte content length triggered relayd to hang. This has
been fixed already.
tobias [Mon, 18 Aug 2014 20:58:56 +0000 (20:58 +0000)]
Variables to count seen packets should be unsigned.
ok krw@
deraadt [Mon, 18 Aug 2014 19:41:18 +0000 (19:41 +0000)]
sync
bcook [Mon, 18 Aug 2014 19:15:34 +0000 (19:15 +0000)]
replace more ROTATE macros with plain-old C code.
Let the compiler optimize these. Even older versions of gcc generate
equal or better quality code than the inline asm.
ok miod@
bcook [Mon, 18 Aug 2014 19:11:48 +0000 (19:11 +0000)]
remove return value from HOST_c2l/l2c macros
These macros and asm inlines simulate a function returning a value, but
nothing ever uses this return value. Remove the pseudo-returns and
(void) casts discarding the unused values.
This, maybe unsurprisingly, speeds things up a bit. It also removes the
GCC 4.9 warnings about unused values.
ok miod@ deraadt@
miod [Mon, 18 Aug 2014 17:56:45 +0000 (17:56 +0000)]
Explicitely need <sys/pool.h> now.
miod [Mon, 18 Aug 2014 17:23:06 +0000 (17:23 +0000)]
Sigh, ignoring instruction fetch bus errors for the kernel code should not
depend upon the address being at the beginning of a cache line, for we may
arrive in the middle of a line thanks to a branch. Noticed the hard way...
schwarze [Mon, 18 Aug 2014 16:26:13 +0000 (16:26 +0000)]
When the first child of the node being validated gets deleted during
validation, man_node_unlink() switches to MAN_NEXT_CHILD. After
that, we have to switch back to MAN_NEXT_SIBLING after completing
validation, or subsequent parsing would add content into an already
closed node, clobbering potentially existing children, causing
information loss and a memory leak. Bug found by kristaps@ with
valgrind in groff(7) on Mac OS X.
Note that the switch back must be conditional, for if the node being
validated itself gets deleted, we must *not* go to MAN_NEXT_SIBLING,
which would not only yield wrong results in general but also crash
in malformed manuals having an empty paragraph before the first .SH,
for example OpenBSD c++filt(1).
While here, add the missing <sys/types.h> as required before mandoc.h.
tedu [Mon, 18 Aug 2014 14:35:37 +0000 (14:35 +0000)]
pool debug back on
tedu [Mon, 18 Aug 2014 14:34:58 +0000 (14:34 +0000)]
a small tweak to improve malloc in multithreaded programs. we don't need
to hold the malloc lock across mmap syscalls in all cases. dropping it
allows another thread to access the existing chunk cache if necessary.
could be improved to be a bit more aggressive, but i've been testing this
simple diff for some time now with good results.
dlg [Mon, 18 Aug 2014 13:29:13 +0000 (13:29 +0000)]
this uses pools, but relied on mbuf.h to provide them.
found by benoit@
schwarze [Mon, 18 Aug 2014 13:25:54 +0000 (13:25 +0000)]
kristaps@ found this with valgrind, merge his patch from bsd.lv:
Fix a corner case where \H<nil> (where <nil> is the \0 character) would
cause mandoc_escape() to read past the end of an allocated string.
Found when a script scanning of all Mac OSX manuals accidentally also
scanned binary (gzip'd) files, discussed with schwarze@ on tech@mdocml.
reyk [Mon, 18 Aug 2014 13:13:42 +0000 (13:13 +0000)]
Sync proc.c with httpd. httpd needs SIGUSR1 but snmpd will ignore it
now instead of terminating the process.
ok blambert@
reyk [Mon, 18 Aug 2014 12:59:00 +0000 (12:59 +0000)]
Sync proc.c with httpd. httpd needs SIGUSR1 but relayd will ignore it
now instead of terminating the process.
ok florian@
reyk [Mon, 18 Aug 2014 09:43:02 +0000 (09:43 +0000)]
Sync proc.c with httpd. httpd needs SIGUSR1 but iked will ignore it
now instead of terminating the process.
ok mikeb@
dlg [Mon, 18 Aug 2014 05:11:03 +0000 (05:11 +0000)]
dont rely on mbuf.h to provide pool.h.
ok miod@, who has offerred to help with any MD fallout
ok guenther@
guenther [Mon, 18 Aug 2014 04:48:22 +0000 (04:48 +0000)]
Add mention of execvpe() setting errno on failure.
from Justus Baumgartner (meddev50 (at) gmail.com)
dlg [Mon, 18 Aug 2014 04:23:11 +0000 (04:23 +0000)]
its a bit silly to include mbuf.h to get to malloc.h. just include
malloc.h instead.
dlg [Mon, 18 Aug 2014 04:06:16 +0000 (04:06 +0000)]
introduce mbuf list and queue apis. both manage fifo lists of mbufs
and a count of the mbufs.
struct mbuf_list and the ml_foo() apis can be used to build lists of
mbufs where you dont need locking (eg, on the stack).
struct mbuf_queue and mq_foo() wrap mbuf_lists with a mutex, and
limits the number of mbufs that can be queued. they can be useful
for moving mbufs between contexts/subsystems.
with help from jmc@ for the manpage bits
mpi@ is keen
guenther [Mon, 18 Aug 2014 03:29:53 +0000 (03:29 +0000)]
Add fancy printing of ktrace()'s ops argument
mquery() has the exact same argument layout as mmap(), so share the case
Fix a couple brace placement glitches
dlg [Mon, 18 Aug 2014 01:28:44 +0000 (01:28 +0000)]
external page headers use an RB tree to find the page header
containing an item when its returned to the pool. this means you
need to do an inexact comparison between an items address and the
page address, cos a pool page can contain many items.
previously this used RB_FIND with a compare function that would do math
on every node comparison to see if one node (the key) was within the other
node (the tree element).
this cuts it over to using RB_NFIND to find the closest tree node
instead of the exact tree node. the node compares turns into simple
< and > operations, which inline very nicely with the RB_NFIND. the
constraint (an item must be within a page) is then checked only
once after the NFIND call.
feedback from matthew@ and tedu@
guenther [Sun, 17 Aug 2014 22:43:07 +0000 (22:43 +0000)]
Use %#o instead of %#x for mode_t
guenther [Sun, 17 Aug 2014 22:25:53 +0000 (22:25 +0000)]
Display symbolicly the mode argument of mkdir, mkfifo, mknod, and umask
schwarze [Sun, 17 Aug 2014 22:08:53 +0000 (22:08 +0000)]
typo, sorry
schwarze [Sun, 17 Aug 2014 22:06:49 +0000 (22:06 +0000)]
While all current callers pass valid data to ascii_hspan() only,
it's safer to assume incoming enum data might be invalid
and catch it instead of happily returning an unitialized int.
No functional change right now.
schwarze [Sun, 17 Aug 2014 21:02:06 +0000 (21:02 +0000)]
typo; Steven Honeyman <stevenhoneyman at gmail dot com>
doug [Sun, 17 Aug 2014 21:01:24 +0000 (21:01 +0000)]
Sync regress/usr.sbin/relayd with recent http.h changes
jmc [Sun, 17 Aug 2014 18:46:29 +0000 (18:46 +0000)]
don;t mark up {};
schwarze [Sun, 17 Aug 2014 18:42:07 +0000 (18:42 +0000)]
Segfault fixes from kristaps@.
Note that .It and .Nm blocks without bodies cannot be generated by
valid mdoc(7) syntax but are a adequate representations of invalid
mdoc(7) constructs like Bl -hang It Bo Sh and Sh SYNOPSIS Nm Bo Sh.
ajacoutot [Sun, 17 Aug 2014 14:43:34 +0000 (14:43 +0000)]
Execute /etc/netstart using sh(1) instead of sourcing it.
Committing early to make sure we have time to fix any side-effect.
ok deraadt@
ajacoutot [Sun, 17 Aug 2014 14:41:03 +0000 (14:41 +0000)]
When running interactively, display the output of the "check" action
(ok or failed) like we do with all other actions.
ok jung@ rpe@
doug [Sun, 17 Aug 2014 12:30:28 +0000 (12:30 +0000)]
Fix regression tests for ld.so
It now runs correctly with 'make depend regress'
miod [Sun, 17 Aug 2014 11:11:34 +0000 (11:11 +0000)]
On kernels compiled with R10000 support, ignore (by simply returning)
`bus error upon instruction fetch' exceptions where the faulting address is
in the kernel, and at the very beginning of an I$ cache line.
(I've experienced these on an R16000 Fuel since several months already)
dlg [Sun, 17 Aug 2014 09:48:55 +0000 (09:48 +0000)]
i broke the userland shim used for the extent regress test when i
made it so struct pool was only visible to _KERNEL. tedu broke it
too when he added the size argument to the kernel free
functions.
this fixes both issues. the main change is to provide a local version of
struct pool with just the bit (pr_size) needed for extent to run.
if extents take advantage of more malloc/pool features (eg, {M,PR}_ZERO
then this will need to be updated again.
found by and based on a diff from Theo Buehler
ok mpi@
jsg [Sun, 17 Aug 2014 09:00:44 +0000 (09:00 +0000)]
sync with hackathons.html
jmc [Sun, 17 Aug 2014 07:15:41 +0000 (07:15 +0000)]
update the built-ins list:
- "times" is both promoted to posix and special (ooh!)
- "pwd" is promoted to posix, but not special (aah!)
while here, jiggle the text somewhat to clarify that "non-POSIX"
actually meant when posix mode is off, not mandated by posix
joint work with guenther
deraadt [Sat, 16 Aug 2014 21:39:16 +0000 (21:39 +0000)]
repair operation of kern.arandom, which will only allow a buffer of
512 bytes. As a result, it stopped working...
ok miod
guenther [Sat, 16 Aug 2014 21:09:36 +0000 (21:09 +0000)]
Cover execvpe() in the description of what the envp arg means.
from Justus Baumgartner (meddev50 (at) gmail.com)
ok jmc@
schwarze [Sat, 16 Aug 2014 19:47:17 +0000 (19:47 +0000)]
If a stray .It follows .El, we are no longer in the list,
even though the list is still the last processed macro.
This fixes a regression introduced in mdoc_macro.c rev. 1.95:
Ulrich Spoerlein <uqs at FreeBSD> reports that various of their
kernel manuals trigger assertions.
bcook [Sat, 16 Aug 2014 18:47:40 +0000 (18:47 +0000)]
replace sprintf/strdup with asprintf in engine test
bcook [Sat, 16 Aug 2014 18:42:41 +0000 (18:42 +0000)]
only build the getrandom path if SYS_getrandom is defined.
like the sysctl path
tobias [Sat, 16 Aug 2014 17:33:40 +0000 (17:33 +0000)]
Fixed typo in "distinct".
ok jmc@
bcook [Sat, 16 Aug 2014 17:30:12 +0000 (17:30 +0000)]
use C rather than C++ array initialization syntax
this causes errors with stricter C compilers
bcook [Sat, 16 Aug 2014 17:21:56 +0000 (17:21 +0000)]
getrandom(2) support for getentropy_linux
This enables support for the new getrandom(2) syscall in Linux 3.17.
If the call exists and fails, return a failure in getentropy(2) emulation as
well. This adds a EINTR check in case the urandom pool is not initialized.
Tested on Fedora Rawhide with 3.17rc0 and Ubuntu 14.04
ok deraadt@
tedu [Sat, 16 Aug 2014 16:38:38 +0000 (16:38 +0000)]
reduce cutoff for "hours only" start times to reduce window of ambiguity.
ok deraadt
deraadt [Sat, 16 Aug 2014 07:49:27 +0000 (07:49 +0000)]
I found a number of interactive events which can cause signals, and go
down paths not previously marked as signal handled unsafe. Try to clean
up a few of them especially regarding errno, mark others as unsafe, and
repair a few by avoiding stdio. Glanced at by misc people in Slovenia,
but considered too risky before release..
deraadt [Sat, 16 Aug 2014 07:42:37 +0000 (07:42 +0000)]
sync
tedu [Fri, 15 Aug 2014 16:55:32 +0000 (16:55 +0000)]
use void * instead of char *. ok jsing
millert [Fri, 15 Aug 2014 16:48:58 +0000 (16:48 +0000)]
Update to tzdata2014f from ftp.iana.org.
mikeb [Fri, 15 Aug 2014 15:46:24 +0000 (15:46 +0000)]
Public key operations are no longer supported
mikeb [Fri, 15 Aug 2014 15:43:27 +0000 (15:43 +0000)]
Remove support for public key operations
mikeb [Fri, 15 Aug 2014 15:37:51 +0000 (15:37 +0000)]
Remove support for public key operations
mikeb [Fri, 15 Aug 2014 15:13:38 +0000 (15:13 +0000)]
Convert 3DES regress test from /dev/crypto to using kernel source code
directly with a simplified CBC implementation.
mikeb [Fri, 15 Aug 2014 14:39:04 +0000 (14:39 +0000)]
Convert AES-CTR regress test from /dev/crypto to using kernel source
code directly. This test is converted the same way jsing@ has recently
converted an XTS test by pulling in xform.c code.
mikeb [Fri, 15 Aug 2014 14:36:19 +0000 (14:36 +0000)]
Convert AES regress test from /dev/crypto to using kernel source code
directly. This test case uses ECB vectors, therefore no chaining is
required.
mikeb [Fri, 15 Aug 2014 14:16:01 +0000 (14:16 +0000)]
lofn(4) and nofn(4) are gone
mikeb [Fri, 15 Aug 2014 14:12:07 +0000 (14:12 +0000)]
With deprecation of crypto(4) interface lofn(4) and nofn(4) become
obsolete. No objections from the usual suspects.
mikeb [Fri, 15 Aug 2014 14:07:39 +0000 (14:07 +0000)]
unlink lofn(4) and nofn(4)
mikeb [Fri, 15 Aug 2014 14:06:47 +0000 (14:06 +0000)]
lofn(4) and nofn(4) are going away
rpe [Fri, 15 Aug 2014 09:45:54 +0000 (09:45 +0000)]
Align install.md files with installer style.
- { foo ; bar ; } -> { foo; bar; }
- if foo ; then -> if foo; then
OK halex@
jmc [Fri, 15 Aug 2014 06:44:29 +0000 (06:44 +0000)]
shorten share/doc/{html,mg} to share/doc, since nothing currently
gets installed in html (i think!);
jmc [Fri, 15 Aug 2014 06:05:18 +0000 (06:05 +0000)]
admission of hawaii happened in 1959, not 1984;
from the freebsd bugs database, bug 192651:
Reported: 2014-08-14 13:17 UTC by Richard
guenther [Fri, 15 Aug 2014 04:14:36 +0000 (04:14 +0000)]
XPG requires insque() and remque() to work with linear lists and not just
circular lists. Amazingly, they managed to extend the requirements to no
longer match the behavior of the VAX instructions they were modeled after,
so the trivial VAX ASM versions have to go. Nice job breaking it, X/Open!
Based on a diff from enh (at) google.com
ok miod@
guenther [Fri, 15 Aug 2014 03:51:40 +0000 (03:51 +0000)]
Use O_CLOEXEC wherever we open a file and then call fcntl(F_SETFD, FD_CLOEXEC)
on it, simplifying error checking, reducing system calls, and improving
thread-safety for libraries.
ok miod@
yasuoka [Fri, 15 Aug 2014 02:27:02 +0000 (02:27 +0000)]
Create a function which loads sgd in the mfi_iop_ops struct so that skinny
adapters can use "IEEE sgl".
tested dlg yasuoka
ok dlg jsg
schwarze [Thu, 14 Aug 2014 22:32:28 +0000 (22:32 +0000)]
Some compilers apparently worry that abort() might return
and then throw a "may be used uninitialized" warning, so
sprinkle some /* NOTREACHED */. No functional change.
Noticed by Thomas Klausner <wiz at NetBSD dot org>.
schwarze [Thu, 14 Aug 2014 20:55:41 +0000 (20:55 +0000)]
Clarify that .Em and .Sy are physical, not semantic markup,
explain appropriate usage, and provide some examples.
ok jmc@
millert [Thu, 14 Aug 2014 20:29:31 +0000 (20:29 +0000)]
regen
millert [Thu, 14 Aug 2014 20:29:08 +0000 (20:29 +0000)]
Add USB hubs found on Intel Z97 chipset boards (one attached to
each EHCI root hub). OK deraadt@ jsg@
jmc [Thu, 14 Aug 2014 20:06:41 +0000 (20:06 +0000)]
double word fix-o;
guenther [Thu, 14 Aug 2014 19:43:45 +0000 (19:43 +0000)]
Backport from binutils-2.17:
2005-08-17 Alan Modra <amodra@bigpond.net.au>
* elfxx-mips.c (_bfd_mips_elf_hide_symbol): Cope with being called
without any got section.
ok miod@
schwarze [Thu, 14 Aug 2014 19:08:21 +0000 (19:08 +0000)]
remove two duplicate command entries;
reported by Denis Fondras <openbsd at ledeuns dot net>
tobias [Thu, 14 Aug 2014 17:55:28 +0000 (17:55 +0000)]
fixed overrid(d)en typo
millert@ and jmc@ agree that "overriden" is wrong
miod [Thu, 14 Aug 2014 17:49:50 +0000 (17:49 +0000)]
Unused variable, and more fixes in the attach failure path.
miod [Thu, 14 Aug 2014 17:21:38 +0000 (17:21 +0000)]
Bring back 1.173 (reverting 1.174) - mips64 systems are still unhappy when
the hint returned is over VM_MAXUSER_ADDRESS, apparently; better be safe for
now while this is investigated further.
mpi [Thu, 14 Aug 2014 12:55:50 +0000 (12:55 +0000)]
No need for <netinet/in_systm.h> nor <netinet/tcpip.h>.
mpi [Thu, 14 Aug 2014 12:44:44 +0000 (12:44 +0000)]
No use for <netinet/in_systm.h> nor <netinet/tcpip.h>.
mpi [Thu, 14 Aug 2014 12:34:04 +0000 (12:34 +0000)]
Kill bandwidth monitoring meters.
bcallah [Thu, 14 Aug 2014 12:22:58 +0000 (12:22 +0000)]
Add bounce matching for [] and {} like mg already does with () and like
Emacs does.
ok florian@
mikeb [Thu, 14 Aug 2014 11:38:14 +0000 (11:38 +0000)]
Compare number of allocated clusters with a low watermark, not
a magic number 4 since sometimes we can't fit a single packet
(jumbo frame) into 4 clusters.
OK dlg
reyk [Thu, 14 Aug 2014 10:30:52 +0000 (10:30 +0000)]
Sync with httpd, including the following change from doug@:
"Sync with RFC 7230-7235 phrases and IANA registered status codes.
ok reyk@"
mikeb [Thu, 14 Aug 2014 09:52:03 +0000 (09:52 +0000)]
Implement rxrinfo ioctl for cluster usage statistics
doug [Thu, 14 Aug 2014 09:12:26 +0000 (09:12 +0000)]
Sync with RFC 7230-7235 phrases and IANA registered status codes.
ok reyk@
mpi [Thu, 14 Aug 2014 09:01:47 +0000 (09:01 +0000)]
No need for raw_cb.h
mpi [Thu, 14 Aug 2014 08:22:38 +0000 (08:22 +0000)]
Kill MRT_{ADD,DEL}_BW_UPCALL interfaces and the bandwidth monitoring
code that comes with them.
ok mikeb@, henning@
mpi [Thu, 14 Aug 2014 08:10:30 +0000 (08:10 +0000)]
Show only active pools by default, pressing 'A' shows all of them.
ok deraadt@
mpi [Thu, 14 Aug 2014 08:08:00 +0000 (08:08 +0000)]
Do not set RTF_MASK, it is not used anymore.
ok yasuoka@
blambert [Thu, 14 Aug 2014 07:55:17 +0000 (07:55 +0000)]
fix logging strings (correct function name via __func__ + a typo)
ok florian@ henning@
chrisz [Thu, 14 Aug 2014 07:50:35 +0000 (07:50 +0000)]
Remove obsolete struct stat parameters.
ok reyk@
jsg [Thu, 14 Aug 2014 03:57:44 +0000 (03:57 +0000)]
add some definitions from libdrm 2.4.56
schwarze [Thu, 14 Aug 2014 02:54:14 +0000 (02:54 +0000)]
fix date that got changed by Mdocdate
and no longer matches the desired output
schwarze [Thu, 14 Aug 2014 02:49:23 +0000 (02:49 +0000)]
mandoc 1.13.1 has been released
schwarze [Thu, 14 Aug 2014 02:00:52 +0000 (02:00 +0000)]
new regression tests collected during recent work
schwarze [Thu, 14 Aug 2014 01:58:51 +0000 (01:58 +0000)]
add missing NOPTS arguments
schwarze [Thu, 14 Aug 2014 00:29:12 +0000 (00:29 +0000)]
Revert previous, as requested by kristaps@.
The .Bf block can contain subblocks, so it has to render as an
element that can contain flow content. But <em> cannot contain
flow content, only phrasing content. Rendering .Em and .Bf differently
would by unfortunate, and closing out .Bf before subblocks and
re-opening it afterwards would merely complicate both the C code
of the program and the generated HTML code. Besides, converting
.Em to semantic HTML markup would require some content to be put
into <em> and some into <i>, but we cannot automatically distinguish
which is which, so strictly speaking, we can't use semantic HTML
here but have to fall back to physical markup. Wonders of HTML...
schwarze [Thu, 14 Aug 2014 00:07:55 +0000 (00:07 +0000)]
Add a simple target to validate the syntax of -Thtml output.
Not hooked to the build yet because there are still too many bugs.
schwarze [Wed, 13 Aug 2014 22:09:28 +0000 (22:09 +0000)]
Begin cleanup of scaling units.
Note that we use 240u := 1i for all devices, even -Tps and -Tpdf.
Big fix of -Tascii rendering of f, m, and u.
Small fix of -Tascii rendering of c.
Big fix of -Thtml rendering of u.
Big fix of -Tps rendering of m, p, and u.
Clarify -Tps rendering of c.
Correct documentation of scaling units, in particular with respect to u.
This for example improves rendering of the OpenGL manuals.
Joint work with kristaps@.