20 Commits

Author SHA1 Message Date
Sebastian Huber
2df56dbd60 Update to FreeBSD head 2018-04-01
Git mirror commit 8dfb1ccc26d1cea7e2529303003ff61f9f1784c4.

Update #3472.
2018-09-21 10:29:40 +02:00
Sebastian Huber
18fa92c2dc Update to FreeBSD head 2018-02-01
Git mirror commit d079ae0442af8fa3cfd6d7ede190d04e64a2c0d4.

Update #3472.
2018-09-21 10:29:39 +02:00
Sebastian Huber
bb80d9df8b Update to FreeBSD head 2017-12-01
Git mirror commit e724f51f811a4b2bd29447f8b85ab5c2f9b88266.

Update #3472.
2018-09-21 10:29:38 +02:00
Sebastian Huber
e4a8065910 Update to FreeBSD head 2017-10-01
Git mirror commit b2f0376b45428f13151d229c5ae9d4d8f74acbd1.

Update #3472.
2018-09-21 10:29:37 +02:00
Sebastian Huber
c37f9fba70 Update to FreeBSD head 2017-08-01
Git mirror commit f5002f5e5f78cae9f0269d812dc0aedb0339312c.

Update #3472.
2018-09-21 10:29:37 +02:00
Sebastian Huber
de261e0404 Update to FreeBSD head 2017-06-01
Git mirror commit dfb26efac4ce9101dda240e94d9ab53f80a9e131.

Update #3472.
2018-09-21 10:29:36 +02:00
Sebastian Huber
a85d90007e Optimize callout handline via static timer wheel
The number of callouts is a compile-time constant in libbsd.  Use this
in struct callout_cpu and avoid dynamic allocation of tables.  This
signficantly reduces the count of load instructions in the callout
handling.
2018-09-17 09:12:06 +02:00
Sebastian Huber
63084c1988 IPFW(4): Remove FreeBSD import
This firewall was not ported to RTEMS and is just dead code which may
make trouble during FreeBSD baseline updates.  It also increased the
compile-time of the library for nothing.

Update #3472.
2018-08-24 09:09:51 +02:00
Sebastian Huber
f62c62d2fe Update rtems-bsd-kernel-namespace.h
Update #3472.
2018-08-24 09:09:51 +02:00
Sebastian Huber
94b5368388 Avoid malloc() in getsockaddr()
The getsockaddr() function is used to allocate a struct sockaddr of the
right length and initialize it with userspace provided data.  It is used
for the connect(), bind() and sendit() family functions.  In particular,
the sendit() function is used by the UDP send functions.  This means
each UDP send needs a malloc() and free() invocation.  This is a
performance problem in RTEMS (first-fit heap) and may lead to heap
fragmentation.  Replace the malloc() allocation with a stack allocation.
This requires SOCK_MAXADDRLEN (= 255) of additional stack space for
libbsd.

A further optimization would be to get rid of the stack copy of the
socket address.  However, this would require to check each consumer of
the address to ensure that it is not modified.
2018-07-04 07:20:37 +02:00
Sebastian Huber
43fdf500ec Import CRC32 support from FreeBSD 2017-10-20 14:59:55 +02:00
Sebastian Huber
f7f3c4b0de blist: Import from FreeBSD 2017-10-20 14:59:55 +02:00
Sebastian Huber
de8a76da2f Update to FreeBSD head 2017-04-04
Git mirror commit 642b174daddbd0efd9bb5f242c43f4ab4db6869f.
2017-04-04 14:46:23 +02:00
Sebastian Huber
0577772720 Update to FreeBSD head 2017-01-09
Git mirror commit 1f8e4a995a6ede4bdb24e6d335ccda2bdb0175ab.
2017-01-10 11:03:27 +01:00
Sebastian Huber
c40e45b75e Update to FreeBSD head 2016-08-23
Git mirror commit 9fe7c416e6abb28b1398fd3e5687099846800cfd.
2017-01-10 09:53:31 +01:00
Christian Mauderer
2fb3a360e7 freebsd: Add constant ipv6 addresses from vars.c.
This is necessary for a configuration without IPv6.
2016-08-04 15:44:06 +02:00
Sebastian Huber
81e5ff4be6 Add kernel namespace exception for mbstat 2016-05-06 14:49:15 +02:00
Sebastian Huber
edb5e4b023 Add kernel namespace exceptions
These names correspond to sysctls.
2016-05-06 14:40:02 +02:00
Sebastian Huber
b8f127e64a Update kernel namespace 2016-05-06 14:10:40 +02:00
Sebastian Huber
0f5dd1cc38 Add script to create the kernel namespace header 2016-05-06 08:56:03 +02:00