summaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * hashx: FixedCapacityVec: TestsIan Jackson2023-08-241-0/+105
| | | | | | | | These pass miri too.
| * hashx: FixedCapacityVec: introduce push_innerIan Jackson2023-08-241-7/+21
| | | | | | | | | | | | To support testing. No change to iai benchmarks.
| * hashx: FixedCapacityVec: use *mut T, and impl DropIan Jackson2023-08-241-24/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | generate_interp_1000x Instructions: 219216169 (-0.408535%) L1 Accesses: 278018470 (-0.322766%) L2 Accesses: 28 (+12.00000%) RAM Accesses: 417 (+0.724638%) Estimated Cycles: 278033205 (-0.322706%) generate_interp_1000x_c Instructions: 272748034 (No change) L1 Accesses: 349932964 (-0.000002%) L2 Accesses: 77 (+1.315789%) RAM Accesses: 410 (+1.234568%) Estimated Cycles: 349947699 (+0.000050%) generate_compiled_1000x Instructions: 256445375 (-0.349434%) L1 Accesses: 342092951 (-0.266541%) L2 Accesses: 166505 (+9.182175%) RAM Accesses: 812 (+0.370828%) Estimated Cycles: 342953896 (-0.245532%) generate_compiled_1000x_c Instructions: 281855218 (No change) L1 Accesses: 362569037 (-0.000002%) L2 Accesses: 87 (No change) RAM Accesses: 472 (+1.287554%) Estimated Cycles: 362585992 (+0.000056%) interp_u64_hash_1000x Instructions: 13450926 (-0.006631%) L1 Accesses: 16622557 (-0.005384%) L2 Accesses: 28 (No change) RAM Accesses: 394 (+0.510204%) Estimated Cycles: 16636487 (-0.004959%) interp_8b_hash_1000x_c Instructions: 8618541 (No change) L1 Accesses: 12316161 (-0.000032%) L2 Accesses: 80 (No change) RAM Accesses: 432 (+0.934579%) Estimated Cycles: 12331681 (+0.001103%) compiled_u64_hash_100000x Instructions: 87311338 (-0.001022%) L1 Accesses: 94396161 (-0.000947%) L2 Accesses: 210 (-0.943396%) RAM Accesses: 779 (+0.386598%) Estimated Cycles: 94424476 (-0.000846%) compiled_8b_hash_100000x_c Instructions: 91547640 (No change) L1 Accesses: 98838173 (-0.000003%) L2 Accesses: 133 (-0.746269%) RAM Accesses: 485 (+0.831601%) Estimated Cycles: 98855813 (+0.000134%)
| * hashx: FixedCapacityVec: Note some missing stuffIan Jackson2023-08-241-0/+12
| |
| * hashx: FixedCapacityVec: DocumentationIan Jackson2023-08-241-0/+27
| |
| * hashx: FixedCapacityVec: Replace .into_boxed_array method with TryIan Jackson2023-08-242-9/+16
| | | | | | | | | | This version pushes the panic into the call site, which seems much better. No change to the iai results.
| * hashx: FixedCapacityVec: Move into its own moduleIan Jackson2023-08-245-71/+80
| |
| * RustfmtIan Jackson2023-08-233-9/+9
| |
| * RFC: hashx: Introduce FixedCapacityVecIan Jackson2023-08-233-6/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is quite shoddy. It shouldn't be merged without some tidying up and unit tests and so on. Also I am confused about the difference between NUM_INSTRUCTIONS and model::REQUIRED_INSTRUCTIONS. However: generate_interp_1000x Instructions: 220115418 (-1.147100%) L1 Accesses: 278918725 (-0.936103%) L2 Accesses: 25 (-98.46248%) RAM Accesses: 414 (-0.956938%) Estimated Cycles: 278933340 (-0.938920%) generate_interp_1000x_c Instructions: 272748034 (No change) L1 Accesses: 349932970 (+0.000001%) L2 Accesses: 76 (-1.298701%) RAM Accesses: 405 (-0.491400%) Estimated Cycles: 349947525 (-0.000021%) generate_compiled_1000x Instructions: 257344624 (-0.982784%) L1 Accesses: 343007206 (-0.753942%) L2 Accesses: 152502 (-17.12839%) RAM Accesses: 809 (-0.369458%) Estimated Cycles: 343798031 (-0.797384%) generate_compiled_1000x_c Instructions: 281855218 (No change) L1 Accesses: 362569043 (+0.000002%) L2 Accesses: 87 (-4.395604%) RAM Accesses: 466 (-0.427350%) Estimated Cycles: 362585788 (-0.000023%) interp_u64_hash_1000x Instructions: 13451818 (-0.100680%) L1 Accesses: 16623452 (-0.105967%) L2 Accesses: 28 (No change) RAM Accesses: 392 (-1.507538%) Estimated Cycles: 16637312 (-0.107138%) interp_8b_hash_1000x_c Instructions: 8618541 (No change) L1 Accesses: 12316165 (+0.000032%) L2 Accesses: 80 (-2.439024%) RAM Accesses: 428 (-0.465116%) Estimated Cycles: 12331545 (-0.000616%) compiled_u64_hash_100000x Instructions: 87312230 (-1.358594%) L1 Accesses: 94397055 (-1.669415%) L2 Accesses: 212 (-0.469484%) RAM Accesses: 776 (-0.767263%) Estimated Cycles: 94425275 (-1.669144%) compiled_8b_hash_100000x_c Instructions: 91547640 (No change) L1 Accesses: 98838176 (+0.000009%) L2 Accesses: 134 (-4.964539%) RAM Accesses: 481 (-0.414079%) Estimated Cycles: 98855681 (-0.000097%)
| * RFC: hashx: Make Program a boxed arrayIan Jackson2023-08-231-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | generate_interp_1000x Instructions: 222669662 (-0.146601%) L1 Accesses: 281554367 (+0.069275%) L2 Accesses: 1623 (-90.13494%) RAM Accesses: 418 (No change) Estimated Cycles: 281577112 (+0.042908%) generate_interp_1000x_c Instructions: 272748034 (No change) L1 Accesses: 349932970 (+0.000001%) L2 Accesses: 74 (No change) RAM Accesses: 407 (-0.731707%) Estimated Cycles: 349947585 (-0.000029%) generate_compiled_1000x Instructions: 259898868 (-0.124860%) L1 Accesses: 345603941 (+0.055045%) L2 Accesses: 193008 (-4.001910%) RAM Accesses: 812 (-0.490196%) Estimated Cycles: 346597401 (+0.043228%) generate_compiled_1000x_c Instructions: 281855218 (No change) L1 Accesses: 362569040 (+0.000000%) L2 Accesses: 88 (+2.325581%) RAM Accesses: 468 (-0.636943%) Estimated Cycles: 362585860 (-0.000026%) interp_u64_hash_1000x Instructions: 13465375 (-0.024687%) L1 Accesses: 16641089 (-0.028974%) L2 Accesses: 25 (+8.695652%) RAM Accesses: 398 (+0.505051%) Estimated Cycles: 16655144 (-0.028470%) interp_8b_hash_1000x_c Instructions: 8618541 (No change) L1 Accesses: 12316165 (+0.000016%) L2 Accesses: 78 (No change) RAM Accesses: 430 (-0.462963%) Estimated Cycles: 12331605 (-0.000551%) compiled_u64_hash_100000x Instructions: 88514787 (-0.000365%) L1 Accesses: 95999693 (+0.000196%) L2 Accesses: 208 (-0.952381%) RAM Accesses: 782 (-0.255102%) Estimated Cycles: 96028103 (+0.000112%) compiled_8b_hash_100000x_c Instructions: 91547640 (No change) L1 Accesses: 98838171 (-0.000002%) L2 Accesses: 137 (+3.007519%) RAM Accesses: 483 (-0.412371%) Estimated Cycles: 98855761 (-0.000053%)
* | Merge branch 'retry_rend' into 'main'Nick Mathewson2023-08-244-8/+29
|\ \ | | | | | | | | | | | | | | | | | | hss: Retry rendezvous circuit attempts. Closes #1013 See merge request tpo/core/arti!1547
| * | hss: Retry rendezvous circuit attempts.Nick Mathewson2023-08-242-8/+27
| | | | | | | | | | | | Closes #1013.
| * | linkspec: Derive Clone and Copy for VerbatimLinkSpecCircTarget.Nick Mathewson2023-08-242-0/+2
| | |
* | | Add initial support for running a PT in server modeSaksham Mittal2023-08-247-307/+662
|/ /
* | tor-keymgr: Bump ssh-key to 0.6.1 and remove unnecessary dependency.Gabriela Moldovan2023-08-241-11/+1
| | | | | | | | | | | | | | Now that [ssh-key 0.6.1] is out, we no longer need the explicit sec1 dependency in tor-keymgr. [ssh-key 0.6.1]: https://github.com/RustCrypto/SSH/pull/155
* | Merge branch 'nickname' into 'main'gabi-2502023-08-248-9/+174
|\ \ | | | | | | | | | | | | Sort out HsNickname, and improve ArtiPathComponent See merge request tpo/core/arti!1544
| * | tor-keymgr, tor-hsservice: Run rustfmt to make derives uglierIan Jackson2023-08-232-6/+16
| | |
| * | tor-keymgr, tor-hsservice: deser for ArtiPathComponent and HsNicknameIan Jackson2023-08-235-0/+49
| | |
| * | tor-hsservice: Use real HsNickname in configIan Jackson2023-08-231-4/+4
| | |
| * | tor-hsservice: Use real HsNickname in ipt_mgrIan Jackson2023-08-231-4/+1
| | |
| * | tor-hsservice: Provide a sensible HsNicknameIan Jackson2023-08-233-0/+91
| | |
| * | tor-keymgr: Improve ArtiPathComponent a bitIan Jackson2023-08-232-0/+18
| | | | | | | | | | | | And add a TODO about the error type.
* | | tor-proto: Make some imports more preciseIan Jackson2023-08-231-1/+3
|/ / | | | | | | | | | | | | | | A warning is getting in my way when I run cargo clippy -p tor-hsservice --all-features See also https://gitlab.torproject.org/tpo/core/arti/-/issues/1006#note_2932088
* | Rerun maint/add_warningIan Jackson2023-08-231-0/+1
| | | | | | | | | | Fixes CI. There was a semantic conflict between !1535 (which added a suppression) and !1523 (which added a new module).
* | Merge branch 'clippy' into 'main'Ian Jackson2023-08-23206-0/+206
|\ \ | | | | | | | | | | | | clippy: Suppress needless_pass_by_value in tests See merge request tpo/core/arti!1535
| * | Run maint/add_warning to add lint block everywhereIan Jackson2023-08-23206-0/+206
| | |
* | | Merge branch 'hss_send_raw' into 'main'Ian Jackson2023-08-231-20/+2
|\ \ \ | | | | | | | | | | | | | | | | hss: use send_raw_msg in rend_handshake. See merge request tpo/core/arti!1536
| * | | hss: use send_raw_msg in rend_handshake.Nick Mathewson2023-08-221-20/+2
| | | |
* | | | Merge branch 'hsdir-apis' into 'main'gabi-2502023-08-232-39/+19
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | tor-netdoc: Remove redundant `IntroPointDesc` struct. See merge request tpo/core/arti!1528
| * | | | tor-netdoc: Remove semver.mdGabriela Moldovan2023-08-231-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Removing the private `IntroPointDesc` isn't really a breaking change, and neither is changing the type of `HsDescBuilder::intro_points`'s argument (because nobody would've been able to this function in the first place as `IntroPointDesc` was never exported from tor-netdoc), so let's remove the semver.md.
| * | | | tor-netdoc: Fix clippy lints.Gabriela Moldovan2023-08-232-6/+6
| | | | |
| * | | | tor-netdoc: Remove redundant `IntroPointDesc` struct.Gabriela Moldovan2023-08-233-33/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit replaces `tor_netdoc::hsdesc::inner::IntroPointDesc` with the (almost identical) `tor_netdoc::hsdesc::IntroPointDesc`. The only difference between the two structs is that `inner::IntroPointDesc` wraps a `Vec<LinkSpec>` instead of a `Vec<EncodedLinkSpec>`. Since `EncodedLinkSpec` can be derived from `LinkSpec` (and vice-versa), and since `hsdesc::inner::IntroPointDesc` never made it in our public API, this commit also removes `hsdesc::inner::IntroPointDesc` in favour of `hsdesc::IntroPointDesc`.
* | | | | ipt establisher API: pass a struct to new() (fmt)Ian Jackson2023-08-231-6/+2
| | | | | | | | | | | | | | | | | | | | One of rustfmt's changes here is wrong. Whatever.
* | | | | ipt establisher API: pass a struct to new()Ian Jackson2023-08-232-20/+47
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now new() only has a reasonable number of arguments and removes some repetition in the mocking arrangements in the IPT Manager. This is the minimum amount that needs to be done in the commit that touches both the IPT Establisher and the Manager.
* | | | Merge branch 'hashx-bench' into 'main'Ian Jackson2023-08-231-38/+63
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | hashx_cachegrind: factor out some common stuff in benchmarks See merge request tpo/core/arti!1529
| * | | hashx_cachegrind: Fix black_box locationIan Jackson2023-08-231-2/+2
| | | |
| * | | hashx_cachegrind: Make mk_c_equix not shuffle the HashXIan Jackson2023-08-231-8/+8
| | | |
| * | | hashx_cachegrind: Make mk_rust not shuffle the HashXBuilderIan Jackson2023-08-231-10/+9
| | | |
| * | | hashx_cachegrind: Introduce C_HASHX_OK aliasIan Jackson2023-08-231-2/+5
| | | |
| * | | hashx_cachegrind: Introduce bench_loop helper macroIan Jackson2023-08-231-24/+29
| | | | | | | | | | | | | | | | | | | | The macro generates similar but not identical code. There are new bindings.
| * | | hashx_cachegrind: Introduce u32be helper functionIan Jackson2023-08-231-4/+11
| | | | | | | | | | | | | | | | This is going to be more obviously useful in a moment.
| * | | hashx_cachegrind: Introduce mk_c_equix helper macroIan Jackson2023-08-231-4/+9
| | | | | | | | | | | | | | | | The macro generates precisely the existing code.
| * | | hashx_cachegrind: Introduce mk_rust helper macroIan Jackson2023-08-231-8/+14
| | |/ | |/| | | | | | | The macro generates precisely the existing code.
* | | Merge branch 'ipt-m' into 'main'Ian Jackson2023-08-2310-6/+1470
|\ \ \ | |/ / |/| | | | | | | | About half of an IPT Manager See merge request tpo/core/arti!1523
| * | tor-hsservice: Add a TODO for breaking up the big functionIan Jackson2023-08-231-0/+2
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1523#note_2934367
| * | tor-hsservice: timeout_track: Add some TODOsIan Jackson2023-08-231-0/+3
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1523#note_2934299
| * | tor-hsservice: ipt-m: Add a TODO about code motionIan Jackson2023-08-231-0/+2
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1523#note_2934300
| * | tor-hsservice: ipt-m: tests: Fix wrong commentIan Jackson2023-08-231-1/+1
| | | | | | | | | | | | | | | As per https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1523#note_2934298
| * | Fix doc formatting.gabi-2502023-08-231-1/+1
| | |
| * | tor-hsservice: About half of an IPT ManagerIan Jackson2023-08-235-2/+799
| | | | | | | | | | | | There are many TODOs and no tests, but it does compile.