summaryrefslogtreecommitdiffstats
path: root/freebsd/sys/kern (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Add mmapVijay Kumar Banerjee2019-07-271-4/+4
|
* SLEEPQUEUE(9): Fix timeout handlingSebastian Huber2019-07-051-2/+4
|
* Separate libbsd and RTEMS clock ticksSebastian Huber2019-05-154-5/+4
|
* Add hostname related sysctls conditionallySebastian Huber2019-05-131-0/+5
| | | | This helps to the reduce code size for USB only use cases.
* Update to FreeBSD head 2018-12-20Sebastian Huber2018-12-2015-246/+360
| | | | | | | | | | Git mirror commit 19a6ceb89dbacf74697d493e48c388767126d418. It includes an update of wpa_supplicant to version 2.7. It includes an update of the OpenSSL baseline to version 1.1.1a. Update #3472.
* SLEEPQUEUE(9): Fix typo that prevent non-SMP build.Christian Mauderer2018-12-191-1/+1
|
* SLEEPQUEUE(9): SMP only cache line alignmentSebastian Huber2018-12-141-0/+4
|
* Update to FreeBSD head 2018-11-15Sebastian Huber2018-11-159-414/+377
| | | | | | Git mirror commit a18b0830c4be01b39489a891b63d6023ada6358a. Update #3472.
* Disable or make static kern_* functionsSebastian Huber2018-11-155-7/+15
|
* Update to FreeBSD head 2018-10-23Sebastian Huber2018-10-257-49/+74
| | | | | | | | | | | Git mirror commit 59f44d20be3f99d181ca742e636d45fc39ec982b. This commit updates OpenSSL to version 1.1.1. This required an update of racoon which uses some internal stuff from OpenSSL and seems to be mostly unmaintained, e.g. there is update in the FreeBSD ports to cope with OpenSSL 1.1.1. Update #3472.
* CONFIG_INTRHOOK(9): Port to RTEMSSebastian Huber2018-09-253-2/+296
| | | | | | | | | Some device drivers (e.g. MMC) need a complex intialization with working callouts. Remove the dummy CONFIG_INTRHOOK() implementation and replace it with the real one from FreeBSD. Make sure TIMEOUT(9) services work at this point. Update #3525.
* Update to FreeBSD head 2018-09-17Sebastian Huber2018-09-2118-543/+952
| | | | | | Git mirror commit 6c2192b1ef8c50788c751f878552526800b1e319. Update #3472.
* Update to FreeBSD head 2018-06-01Sebastian Huber2018-09-2127-983/+1862
| | | | | | Git mirror commit fb63610a69b0eb7f69a201ba05c4c1a7a2739cf9. Update #3472.
* Update to FreeBSD head 2018-04-01Sebastian Huber2018-09-2111-28/+33
| | | | | | Git mirror commit 8dfb1ccc26d1cea7e2529303003ff61f9f1784c4. Update #3472.
* Update to FreeBSD head 2018-02-01Sebastian Huber2018-09-2110-31/+90
| | | | | | Git mirror commit d079ae0442af8fa3cfd6d7ede190d04e64a2c0d4. Update #3472.
* Update to FreeBSD head 2017-12-01Sebastian Huber2018-09-2151-267/+452
| | | | | | Git mirror commit e724f51f811a4b2bd29447f8b85ab5c2f9b88266. Update #3472.
* Update to FreeBSD head 2017-10-01Sebastian Huber2018-09-217-178/+568
| | | | | | Git mirror commit b2f0376b45428f13151d229c5ae9d4d8f74acbd1. Update #3472.
* Update to FreeBSD head 2017-08-01Sebastian Huber2018-09-2116-1007/+1460
| | | | | | Git mirror commit f5002f5e5f78cae9f0269d812dc0aedb0339312c. Update #3472.
* Update to FreeBSD head 2017-06-01Sebastian Huber2018-09-2110-60/+172
| | | | | | Git mirror commit dfb26efac4ce9101dda240e94d9ab53f80a9e131. Update #3472.
* Optimize callout handline via static timer wheelSebastian Huber2018-09-171-1/+17
| | | | | | | 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.
* Remove struct callout::c_cpuSebastian Huber2018-09-171-1/+23
| | | | | This is an optimization of the callout handling. In libbsd all callouts are handled by the one and only timer server.
* Fix alignment of getsockaddr_sockaddrSebastian Huber2018-08-241-1/+1
|
* Update due to <sys/time.h> API changesSebastian Huber2018-08-241-10/+11
| | | | | | | | | | | | | | | | | | | | | | | | | Changes correspond to FreeBSD commit: "Make timespecadd(3) and friends public The timespecadd(3) family of macros were imported from NetBSD back in r35029. However, they were initially guarded by #ifdef _KERNEL. In the meantime, we have grown at least 28 syscalls that use timespecs in some way, leading many programs both inside and outside of the base system to redefine those macros. It's better just to make the definitions public. Our kernel currently defines two-argument versions of timespecadd and timespecsub. NetBSD, OpenBSD, and FreeDesktop.org's libbsd, however, define three-argument versions. Solaris also defines a three-argument version, but only in its kernel. This revision changes our definition to match the common three-argument version. Bump _FreeBSD_version due to the breaking KPI change. Discussed with: cem, jilles, ian, bde Differential Revision: https://reviews.freebsd.org/D14725" Update #3472.
* Make sure CALLOUT_DFRMIGRATION is not usedSebastian Huber2018-07-261-10/+21
| | | | | This flag supports the callout migration in FreeBSD. This feature is not supported by libbsd.
* Make sure CALLOUT_PROCESSED is not usedSebastian Huber2018-07-261-0/+2
| | | | | This flag is only used in combination with the callout expire list, which we do not use in libbsd.
* Critical bug fix for calloutsSebastian Huber2018-07-261-1/+31
| | | | | | | | FreeBSD has two callout executors, one in software and one in hardware interrupt context. In libbsd, all callouts are executed by the timer server. Entirely remove the different execution contexts for libbsd. Previously, this was not properly done which could result an invalid callout_drain() sequence leading to system memory corruption.
* Avoid malloc() in getsockaddr()Sebastian Huber2018-07-041-0/+45
| | | | | | | | | | | | | | | | 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.
* SLEEPQUEUE(9): Update due to API changesSebastian Huber2018-02-051-1/+1
| | | | Update #3264.
* Fix file descriptor reference counting in accept()Sebastian Huber2017-11-151-0/+2
| | | | Update #3132.
* Disable HHOOK(9) support for socketsSebastian Huber2017-11-101-0/+10
| | | | | Support was only partly disabled leading to NULL pointer accesses. Disable it completely.
* Fix reference counting for file descriptorsSebastian Huber2017-11-103-0/+18
| | | | Update #3132.
* blist: Import from FreeBSDSebastian Huber2017-10-201-0/+1097
|
* Fix INVARIANTS supportSebastian Huber2017-10-202-0/+4
|
* DEVICE(9): Avoid NULL pointer accessSebastian Huber2017-10-201-0/+3
|
* SLEEPQUEUE(9): Update due to API changesSebastian Huber2017-10-171-1/+1
| | | | | Update #3117. Update #3182.
* Support reference counting for file descriptorsSebastian Huber2017-09-152-2/+13
| | | | Close #3132.
* KQUEUE(2): Add missing file handlerSebastian Huber2017-07-281-1/+4
|
* PIPE(2): Add missing file handlerSebastian Huber2017-07-281-6/+78
|
* SOCKET(2): Add missing file handlerSebastian Huber2017-07-281-1/+64
|
* Use <sys/lock.h> provided by NewlibSebastian Huber2017-06-0843-43/+43
|
* Update due to Newlib 2017-06-07 changesSebastian Huber2017-06-0852-59/+59
| | | | | | | | | | | | | | | | | The following files are now provided by Newlib: * arpa/inet.h * net/if.h * netinet/in.h * netinet/tcp.h * sys/socket.h * sys/uio.h * sys/un.h The <sys/param.h> and <sys/cpuset.h> are now compatible enough to be used directly. Update #2833.
* devfs: Fix some issuesKevin Kirspel2017-05-121-4/+0
| | | | | Fix issue with cdev private data usage with RTEMS iop structure. Add support for cdev alias device names. Add support for cdev fstat.
* Updating FREEBSD for tty supportKevin Kirspel2017-05-114-20/+70
|
* Adding tty support files from FREEBSD treeKevin Kirspel2017-05-114-0/+4460
|
* Update to FreeBSD head 2017-04-04Sebastian Huber2017-04-0423-254/+591
| | | | Git mirror commit 642b174daddbd0efd9bb5f242c43f4ab4db6869f.
* Fix SOCK_CLOEXEC with socket() and socketpair()Sebastian Huber2017-03-141-4/+0
| | | | | Remove SOCK_CLOEXEC flag to get a valid socket type, e.g. to avoid a EPROTOTYPE in case of socket(..., SOCK_DGRAM | SOCK_CLOEXEC, ...).
* Provide sbuf_hexdump()Sebastian Huber2017-03-061-1/+1
|
* Avoid kern_unsetenv()Sebastian Huber2017-03-061-0/+4
|
* SLEEPQUEUE(9): Fix absolute timeoutsSebastian Huber2017-02-281-5/+24
| | | | | | | | The FreeBSD kernel timeouts are always based on the uptime. Thus, we have to use the relative watchdog. C_ABSOLUTE just means that the timeout value is already an uptime value. https://lists.freebsd.org/pipermail/freebsd-hackers/2017-February/050572.html
* SLEEPQUEUE(9): Add wmesg to thread wait infoSebastian Huber2017-01-311-1/+4
|