<feed xmlns='http://www.w3.org/2005/Atom'>
<title>embassy/embassy-net/src/packet_pool.rs, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/'/>
<entry>
<title>net: remove packet pool.</title>
<updated>2022-12-13T15:18:39+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2022-12-07T14:55:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=ac74613b5a7be72acd8d5259055963f8b4aba7fd'/>
<id>ac74613b5a7be72acd8d5259055963f8b4aba7fd</id>
<content type='text'>
The pool was prone to deadlocks, especially due to having a single pool
for rx+tx. If the pool got full with rx'd packets it would deadlock because
processing a rx packet requires doing another allocation on the pool, for
the possibly tx'd response, before deallocating the rx'd packet.

This also allows Device impls to allocate the packet memory in a particular
RAM kind, if needed for example to do DMA.

The `Device` trait is now token-based, like smoltcp's. In the end, this
is better because it allows callers to manage memory however they want (including
with a pool if they want to).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The pool was prone to deadlocks, especially due to having a single pool
for rx+tx. If the pool got full with rx'd packets it would deadlock because
processing a rx packet requires doing another allocation on the pool, for
the possibly tx'd response, before deallocating the rx'd packet.

This also allows Device impls to allocate the packet memory in a particular
RAM kind, if needed for example to do DMA.

The `Device` trait is now token-based, like smoltcp's. In the end, this
is better because it allows callers to manage memory however they want (including
with a pool if they want to).
</pre>
</div>
</content>
</entry>
<entry>
<title>Run rustfmt.</title>
<updated>2022-06-12T20:22:31+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2022-06-12T20:15:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=a8703b75988e1e700af701116464025679d2feb8'/>
<id>a8703b75988e1e700af701116464025679d2feb8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Add support for packet pools with size 64 and 128</title>
<updated>2022-04-27T19:27:28+00:00</updated>
<author>
<name>Matous Hybl</name>
<email>hyblmatous@gmail.com</email>
</author>
<published>2022-04-27T19:27:28+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=3a3ed27c303055c6770784f86b996b4721786576'/>
<id>3a3ed27c303055c6770784f86b996b4721786576</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>net: Add features for pool size and remove unwrap on smoltcp device</title>
<updated>2021-06-16T14:48:35+00:00</updated>
<author>
<name>Thales Fragoso</name>
<email>thales.fragosoz@gmail.com</email>
</author>
<published>2021-06-14T21:06:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=3396a519389837727c17eae2ebf65d5c93f70551'/>
<id>3396a519389837727c17eae2ebf65d5c93f70551</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>eth-v2: Start Ethernet peripheral implementation</title>
<updated>2021-06-16T14:48:35+00:00</updated>
<author>
<name>Thales Fragoso</name>
<email>thales.fragosoz@gmail.com</email>
</author>
<published>2021-06-07T05:30:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=46e1bae9e36917c2e763082730d99df302c1c625'/>
<id>46e1bae9e36917c2e763082730d99df302c1c625</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Update to latest embassy, atomic-pool, smoltcp</title>
<updated>2021-04-07T17:06:45+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2021-04-07T17:06:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=9c5a8b945a743e75d586fdc2ef857d7c2a038e7d'/>
<id>9c5a8b945a743e75d586fdc2ef857d7c2a038e7d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>:rainbow:</title>
<updated>2021-02-03T04:09:37+00:00</updated>
<author>
<name>Dario Nieuwenhuis</name>
<email>dirbaio@dirbaio.net</email>
</author>
<published>2021-02-03T04:09:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.d464.sh/rust/embassy/commit/?id=cb5931d583d283dda3a1b5ed2014c086bb8f98ae'/>
<id>cb5931d583d283dda3a1b5ed2014c086bb8f98ae</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
