forked from M-Labs/zynq-rs
1
0
Fork 0
Commit Graph

24 Commits

Author SHA1 Message Date
Astro 4b258c19f5 libasync: improve scheduling fairness between block_on and spawned tasks
in the libasync::smoltcp::Sockets::run() case the block_on iface.poll
loop would progress just one task before. now all tasks get to run in
each iteration.
2020-08-17 00:58:12 +02:00
Sebastien Bourdeauducq 84f1380f48 libasync: assert that callback consumes data in smoltcp recv 2020-07-19 16:14:29 +08:00
Sebastien Bourdeauducq 7b78bc0494 libasync: new stream.recv API
M-Labs/artiq-zynq#40 (comment)
2020-07-19 15:34:32 +08:00
Astro b4bcc6cf5c TcpStream: add send_slice() 2020-06-18 01:56:49 +02:00
Astro 3b4be6a414 libasync: add mod delay 2020-04-25 01:25:12 +02:00
Astro 88a2a2bc71 libasync, libboard_zynq: add block_async glue, make GlobalTimer sharable 2020-04-25 01:18:49 +02:00
Astro bcedd02ad9 libasync: add TcpSocket::{close, abort, keep_alive, timeout}() 2020-04-16 20:43:36 +02:00
Astro 60e45f096d libasync: Sockets::run() returns ! 2020-04-16 20:42:21 +02:00
Astro c3fc948714 libasync: replace TcpStream::listen() with accept(), make accept() return earlier 2020-04-16 20:28:40 +02:00
Sebastien Bourdeauducq be35be8d38 Revert "Revert "libasync: don't let TcpStream::read() call back for empty buffers""
Zero-length buffer is really a special case, as one must return Poll::Pending in this case.

This reverts commit 1ac10ba0d4.
2020-04-15 09:16:25 +08:00
Sebastien Bourdeauducq 1ac10ba0d4 Revert "libasync: don't let TcpStream::read() call back for empty buffers"
Usually easy to handle in user code and avoids duplicating logic.

This reverts commit e3a6a6e1f8.
2020-04-14 09:03:48 +08:00
Astro e3a6a6e1f8 libasync: don't let TcpStream::read() call back for empty buffers 2020-04-14 01:06:25 +02:00
Astro 60a29456ec libasync: change TcpStream::listen() callback constraint from Copy to Clone 2020-04-14 00:08:57 +02:00
Astro ab2a8db4d3 libasync: pass time 2020-04-03 00:18:04 +02:00
Astro 6dde8c3b02 libasync: doc TcpStream 2020-04-01 23:34:53 +02:00
Astro 75a8889d28 libasync: create TcpSocketBuffers from uninitialized memory 2020-04-01 23:21:27 +02:00
Astro 0618642d3f libasync: simplify TcpStream::accept() 2020-04-01 23:01:48 +02:00
Astro 90e9a7db02 libasync: refactor listen() into accept()+listen() with a backlog 2020-04-01 22:58:02 +02:00
Astro ab1404488c libasync: fix TcpStream, implement recv()+send() 2020-03-31 22:49:41 +02:00
Astro 8bc721826c libasync: wrap_waker() 2020-03-31 18:57:01 +02:00
Astro d2f91eac25 libasync: start smoltcp support 2020-03-31 01:16:58 +02:00
Astro 48257e989c libasync: pin tasks to memory 2020-03-31 01:13:01 +02:00
Astro ea765fc529 libasync: replace executor Mutexes with RefCells
this will not run on multi-core.
2020-03-26 20:29:36 +01:00
Astro 5b95410244 libasync: adapt from async-on-embedded/async-cortex-m 2020-03-26 01:35:05 +01:00