ladybird/Kernel/Net
Tom 046d6855f5 Kernel: Move block condition evaluation out of the Scheduler
This makes the Scheduler a lot leaner by not having to evaluate
block conditions every time it is invoked. Instead evaluate them as
the states change, and unblock threads at that point.

This also implements some more waitid/waitpid/wait features and
behavior. For example, WUNTRACED and WNOWAIT are now supported. And
wait will now not return EINTR when SIGCHLD is delivered at the
same time.
2020-11-30 13:17:02 +01:00
..
ARP.h AK: Add Endian.h header to replace NetworkOrdered.h. 2020-08-25 16:22:14 +02:00
E1000NetworkAdapter.cpp MACAddress: AK::Array as member variable instead of C-array 2020-11-20 21:18:14 +01:00
E1000NetworkAdapter.h Kernel: Use AK::Span a bunch in the network adapter code 2020-07-28 20:19:22 +02:00
EthernetFrameHeader.h AK: Add Endian.h header to replace NetworkOrdered.h. 2020-08-25 16:22:14 +02:00
EtherType.h Meta: Add license header to source files 2020-01-18 09:45:54 +01:00
ICMP.h Meta+Kernel: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
IPv4.h AK: Add Endian.h header to replace NetworkOrdered.h. 2020-08-25 16:22:14 +02:00
IPv4Socket.cpp Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
IPv4Socket.h Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
IPv4SocketTuple.h SinglyLinkedList: Remove unused includes 2020-10-08 09:54:41 +02:00
LocalSocket.cpp Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
LocalSocket.h Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
LoopbackAdapter.cpp Kernel: Switch singletons to use new Singleton class 2020-08-25 09:48:48 +02:00
LoopbackAdapter.h Kernel: Switch singletons to use new Singleton class 2020-08-25 09:48:48 +02:00
NetworkAdapter.cpp Meta+Kernel: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
NetworkAdapter.h Kernel: Plumb packet receive timestamp from NetworkAdapter to Socket::recvfrom 2020-09-17 17:23:01 +02:00
NetworkTask.cpp Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
NetworkTask.h Kernel: Move NetworkTask startup into NetworkTask::spawn() 2020-04-09 13:31:05 +02:00
Routing.cpp Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
Routing.h Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
RTL8139NetworkAdapter.cpp MACAddress: AK::Array as member variable instead of C-array 2020-11-20 21:18:14 +01:00
RTL8139NetworkAdapter.h Kernel: Use AK::Span a bunch in the network adapter code 2020-07-28 20:19:22 +02:00
Socket.cpp Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
Socket.h Kernel+LibC+UserspaceEmulator: Add SO_TIMESTAMP, and cmsg definitions 2020-09-17 17:23:01 +02:00
TCP.h TCP: Remove unnecessarily defined constructor and destructor 2020-10-08 10:01:10 +02:00
TCPSocket.cpp Kernel: Move block condition evaluation out of the Scheduler 2020-11-30 13:17:02 +01:00
TCPSocket.h AK: Make RefPtr, NonnullRefPtr, WeakPtr thread safe 2020-11-10 19:11:52 +01:00
UDP.h Meta+Kernel: Make clang-format-10 clean 2020-09-25 21:18:17 +02:00
UDPSocket.cpp Kernel: Make copy_to/from_user safe and remove unnecessary checks 2020-09-13 21:19:15 +02:00
UDPSocket.h Kernel: Make copy_to/from_user safe and remove unnecessary checks 2020-09-13 21:19:15 +02:00