Cameron Bytheway
Cameron Bytheway
I agree this would be helpful to have. If you look at the [rust-fuzz trophy case](https://github.com/rust-fuzz/trophy-case), many of the bugs in the `oor` category could have been prevented with this...
As mentioned in discord, I think something like this could work pretty well: https://godbolt.org/z/hjYbeEf5P. We could also do a blanket impl: `impl Buf for B { ... }` and delegate...
The SDK does call [s2n_disable_atexit](https://github.com/awslabs/aws-c-io/blob/4e462a0687d00d18cfdece3cd7a427d8a9b2e13d/source/s2n/s2n_tls_channel_handler.c#L183). In fact, that call actually was added to support the SDK: #3011.
This distinction is intentional as it tracks the number of processed entries by the OS. If you're wanting to track datagrams you'll need to use https://docs.rs/s2n-quic/latest/s2n_quic/provider/event/events/struct.DatagramSent.html
In order to account for GSO in platform TX, we'd have to iterate over all of the entries that were sent and read the GSO segment size. I worry that...
Oh are you using the platform crate outside of s2n-quic? If so you'll need to emit the datagram sent event when you push https://github.com/aws/s2n-quic/blob/e5ae19ff115a09d29a8b041728393df85f0b69ea/quic/s2n-quic-transport/src/connection/transmission.rs#L394 Like you said it's not entirely...
Can you add an x86 matrix entry in the ci as part of this change? It should be pretty straightforward to do: https://github.com/aws/s2n-quic/blob/e5ae19ff115a09d29a8b041728393df85f0b69ea/.github/workflows/ci.yml#L221-L223 I'm fine with the all of the...
Oh looks like we need to do ```rust #[cfg_attr(miri, ignore)] ```
I added some instructions to run the benchmarks. For the flamgraphs I'm just linking to the perf artifacts for this PR: https://dnglbrstg7yg.cloudfront.net/026edf713ff2f60c35e15021e25c9006084940af/perf/index.html.
You're using a custom IO provider? The ordering of the `Endpoint` trait calls needs to be preserved from the tokio implementation. Also keep in mind that custom IO providers are...