Commit Graph

  • af8ab2daf6 Clear freelist pointers on allocation for CHERI or CHECK_CLIENT builds. Robert Norton 2022-02-09 16:56:53 +00:00
  • baf35cc80e Return a small allocation from realloc(ptr, 0). (#460) David Chisnall 2022-02-11 15:11:15 +00:00
  • eb00f3184f Remove local state from Pagemap representation. Matthew Parkinson 2022-02-10 11:57:13 +00:00
  • be98a27bf1 Improve RBTree Matthew Parkinson 2022-02-04 11:58:07 +00:00
  • 69c824d54d Expose mutable reference to pagemap Matthew Parkinson 2022-02-03 17:22:21 +00:00
  • 79486b6331 Rearrange templates for buddy allocator. Matthew Parkinson 2022-02-03 17:17:58 +00:00
  • 79ea08779b Add jemalloc compat functions. (#456) David Chisnall 2022-02-09 10:49:02 +00:00
  • 20ddf8a150 Fix bug setting CHERI bounds in address_space_core.h. Robert Norton 2022-02-07 17:07:09 +00:00
  • 539937336d Extend malloc test to check CHERI capability length. Robert Norton 2022-02-07 16:36:51 +00:00
  • 63d3928687 Add a red-black tree implementation and testing. Matthew Parkinson 2022-01-24 13:13:58 +00:00
  • 3d1b973480 Add DEBUG constexpr Matthew Parkinson 2022-02-01 09:11:35 +00:00
  • f1be609cdb Small fixes for snmalloc used in FreeBSD libc. (#454) David Chisnall 2022-01-21 14:19:26 +00:00
  • ef64f6c31b Improve check_bounds init check. Matthew Parkinson 2022-01-10 10:34:28 +00:00
  • 419347ba4a Optimise guarded memcpy (#449) Matthew Parkinson 2022-01-07 17:09:13 +00:00
  • 4ea978b946 Remove fake_large_remote David Chisnall 2022-01-07 15:29:34 +00:00
  • 74a2da177f try enabling windows-2022 (#445) Schrodinger ZHU Yifan 2022-01-07 19:24:56 +08:00
  • a77890c6ee PAL netbsd (temporary until some time 2022) build fix. (#450) David CARLIER 2022-01-07 11:24:35 +00:00
  • 61314f2260 Post large deallocations to original thread (#441) Matthew Parkinson 2021-12-17 14:08:08 +00:00
  • 3fb7c98364 That's snmalloc_check_client to you. Nathaniel Wesley Filardo 2021-12-16 20:16:41 +00:00
  • 927575dc86 Increase barrier strength on ABA. Matthew Parkinson 2021-12-17 12:41:27 +00:00
  • 16875382c4 Make explicitly racy part of stack Matthew Parkinson 2021-12-17 12:29:42 +00:00
  • 84ac360445 Make MPSCQ invariant thread-safe Matthew Parkinson 2021-12-17 12:12:32 +00:00
  • 91d500baf8 Fix flag lock race condition in Debug. Matthew Parkinson 2021-12-17 11:46:06 +00:00
  • be85d53c20 Factor out sanitizer run. Matthew Parkinson 2021-12-17 09:26:24 +00:00
  • b777243981 Additional CHERI client checks Nathaniel Wesley Filardo 2021-11-18 22:54:13 +00:00
  • 22a05b4a3c CHERI: dealloc() use cap base, not address Nathaniel Wesley Filardo 2021-11-11 14:46:52 +00:00
  • 3a509d41f0 CHERI: Avoid traps on nullptr Nathaniel Wesley Filardo 2021-11-11 14:44:36 +00:00
  • 13a4b0471e CHERI: address_space_core should bound more Nathaniel Wesley Filardo 2021-11-11 14:43:16 +00:00
  • 9b60e8256d CHERI: update StrictProvenance.md for new world order Nathaniel Wesley Filardo 2021-11-11 14:42:51 +00:00
  • 4f2d3ebf33 Enable sanitizers in CI. Matthew Parkinson 2021-12-15 11:46:55 +00:00
  • 0fd5c37563 Change MPSCQ to use acquire Matthew Parkinson 2021-12-15 11:46:39 +00:00
  • 7768765fe8 Fixed locking around notification Matthew Parkinson 2021-12-14 11:49:39 +00:00
  • f398545154 Fix memalign usage Matthew Parkinson 2021-12-14 11:48:45 +00:00
  • 37d2ac42af use ::write and ::fsync in error path (#443) Schrodinger ZHU Yifan 2021-12-15 22:01:34 +08:00
  • d0df2d028a Fix CI branch name. (#442) Matthew Parkinson 2021-12-13 14:36:12 +00:00
  • 360efa2123 export netbsd's reallocarr proposal. (#433) David CARLIER 2021-12-02 14:49:32 +00:00
  • 7f3642e05c Change external thread_alloc example. (#424) Matthew Parkinson 2021-12-02 10:39:44 +00:00
  • 71d5bb8756 add SYS_getrandom fallback for posix PAL (#431) Schrodinger ZHU Yifan 2021-12-02 18:38:50 +08:00
  • 9329db102f Remove Win2016 as Github Action support ending. Matthew Parkinson 2021-12-02 09:13:36 +00:00
  • 894b0314c9 Add timeout to ci tests. Matthew Parkinson 2021-12-01 20:09:48 +00:00
  • 9b548ed3a2 Add ownership checkings for FlagLock under debug (#432) Schrodinger ZHU Yifan 2021-12-02 17:18:24 +08:00
  • b1da339b3e build fix proposal for GCC 11.x (spotted with 11.2.0). David Carlier 2021-12-01 08:12:46 +00:00
  • 5fd3288997 Modify heuristic for adding new slabs. (#429) Matthew Parkinson 2021-11-25 13:43:50 +00:00
  • c299826f58 Improve codegen for checks. Matthew Parkinson 2021-11-24 14:34:26 +00:00
  • a8ef963ed7 Small comment Matthew Parkinson 2021-11-24 14:34:07 +00:00
  • d725beca90 Minor improvement to codegen for remaining_bytes Matthew Parkinson 2021-11-24 14:33:57 +00:00
  • 9332557bb0 memory unit test android build fix. (#427) David CARLIER 2021-11-24 12:12:47 +00:00
  • e24130137d solaris systems build fix (#425) David CARLIER 2021-11-22 09:47:30 +00:00
  • 8e5514bd5a clean up unused usages (#421) Schrodinger ZHU Yifan 2021-11-19 21:23:39 +08:00
  • f731bc169b build fix for some 3rd party oses. David Carlier 2021-11-18 07:39:29 +00:00
  • faa80037bb put likely/unlikely in scope (#420) Schrodinger ZHU Yifan 2021-11-18 00:05:52 +08:00
  • cd0311b26f Nits for rust release (#419) Schrodinger ZHU Yifan 2021-11-18 00:02:47 +08:00
  • dc542cdc9d Various fixes for OE (#418) Matthew Parkinson 2021-11-17 14:11:46 +00:00
  • 91919f6014 Update src/backend/pagemap.h Matthew Parkinson 2021-11-17 09:19:08 +00:00
  • 3d403aef7f Refactor use of sizeclasses (#415) Matthew Parkinson 2021-11-10 16:35:44 +00:00
  • 02f36a4b31 Make test fail with more information. Matthew Parkinson 2021-11-03 16:24:50 +00:00
  • cf89339762 Move rsize calculation to a slow path. Matthew Parkinson 2021-11-03 16:24:28 +00:00
  • d01e2cdf60 Fix tests. Matthew Parkinson 2021-11-03 16:23:39 +00:00
  • 7ef1dfdd51 Fix ARM AAL on Morello Nathaniel Wesley Filardo 2021-11-03 14:22:57 +00:00
  • dd5c91eb43 Change Remote Cache default size Matthew Parkinson 2021-10-28 14:28:01 +01:00
  • 19de27fdaf Improve fast path of handle remote deallocs Matthew Parkinson 2021-10-28 14:26:41 +01:00
  • fd408637a7 Move some structures to cache lines Matthew Parkinson 2021-10-28 14:23:15 +01:00
  • 3407347925 Add custom datastructure for local chunk cache Matthew Parkinson 2021-10-28 14:22:23 +01:00
  • 72ccb23d02 Add local caching to chunk allocator Matthew Parkinson 2021-10-20 16:55:08 +01:00
  • 20a114cb62 Add a timer to the PAL Matthew Parkinson 2021-10-20 09:31:45 +01:00
  • c1062e629e Add Madvise free to Linux layer Matthew Parkinson 2021-10-20 16:54:45 +01:00
  • cec015f296 Add FIFO behaviour for unchecked code. Matthew Parkinson 2021-10-22 16:12:59 +01:00
  • 4987a19fe9 Rename Matthew Parkinson 2021-10-22 16:12:44 +01:00
  • 5215bffa9e Change malloc test suite for errno Matthew Parkinson 2021-10-21 16:05:58 +01:00
  • eb6c1a05c8 Make chunk size at least the page size. Matthew Parkinson 2021-10-21 11:35:25 +01:00
  • 4a7cd268f8 Rename slab_allocator to chunk_allocator Matthew Parkinson 2021-10-20 11:12:09 +01:00
  • 342d826310 CheriBSD bugs workarounds Nathaniel Wesley Filardo 2021-10-18 21:51:49 +01:00
  • 6ddd11faee CheriBSD/CHERI support Nathaniel Wesley Filardo 2021-07-19 09:54:20 +01:00
  • 6f79ddee31 FreeBSD RISC platforms have fewer address bits Nathaniel Wesley Filardo 2021-08-12 11:59:27 +01:00
  • eb0698fc09 CI: Add RISC-V 64 cross-build & qemu-user tests Nathaniel Wesley Filardo 2021-10-19 12:19:47 +01:00
  • 97a8bd1758 Initial RISC-V AAL Nathaniel Wesley Filardo 2021-07-19 09:47:38 +01:00
  • fe43f0bea8 Placate some compiler errors on CHERI Nathaniel Wesley Filardo 2021-10-18 22:03:31 +01:00
  • fa4560801a freelist: check_prev expects an address_t Nathaniel Wesley Filardo 2021-10-18 22:04:43 +01:00
  • 8023a6c906 backend/address_space: drop spurious !StrictProvenance guard Nathaniel Wesley Filardo 2021-10-18 22:18:14 +01:00
  • 3cdb7be478 MetaEntry: split get_metaslab by intent Nathaniel Wesley Filardo 2021-10-17 18:12:48 +01:00
  • 599ae0e632 Metaslab: add MetaCommon field Nathaniel Wesley Filardo 2021-10-17 16:38:19 +01:00
  • 6c115eec18 NFC: doc tweaks Nathaniel Wesley Filardo 2021-10-17 18:09:00 +01:00
  • f0b7dc4b04 NFC: Extract MetaCommon from ChunkRecord Nathaniel Wesley Filardo 2021-10-17 16:27:29 +01:00
  • 5bb556cb68 Convert alloc paths to capptr::Alloc<void> Nathaniel Wesley Filardo 2021-10-20 02:49:32 +01:00
  • 31b8d99ca6 test/func/memcpy: adjust test sizes Nathaniel Wesley Filardo 2021-10-18 21:49:09 +01:00
  • 7f6378f5bf test/func/domestication: tweak for robustness Nathaniel Wesley Filardo 2021-10-18 21:22:42 +01:00
  • 554db3997d localalloc::dealloc tweak size math for large objects Nathaniel Wesley Filardo 2021-10-17 18:03:39 +01:00
  • 52a4b0c8d0 NFC: Make unsafe_capptr private, use unsafe_ptr() Nathaniel Wesley Filardo 2021-10-20 02:43:34 +01:00
  • c54d2b527d NFC: CapPtr in external_pointer; drop capptr_rebound Nathaniel Wesley Filardo 2021-10-19 13:33:10 +01:00
  • 3462c53983 NFC: Remove spurious forward declarations Nathaniel Wesley Filardo 2021-08-20 13:10:31 +01:00
  • c2ce9c118d NFC: Racing stripes on Metaslab accessors Nathaniel Wesley Filardo 2021-10-17 17:23:39 +01:00
  • dba795ac6f NFC: move some capptr utility functions to that namespace Nathaniel Wesley Filardo 2021-10-17 18:37:38 +01:00
  • 1de28eead7 test/func/malloc fixes Nathaniel Wesley Filardo 2021-10-18 16:41:03 +01:00
  • 6db9a2f0e2 Add validate to freelist::Builder Matthew Parkinson 2021-10-18 12:06:26 +01:00
  • 93bb037c64 Fixed bounds calculation for domestication Matthew Parkinson 2021-10-18 12:04:09 +01:00
  • ed10717dde RemoteAllocator: dequeue as destructive iterator Nathaniel Wesley Filardo 2021-10-13 12:52:01 +01:00
  • 2316a5c574 Add minimal domestication test Nathaniel Wesley Filardo 2021-10-12 22:24:10 +01:00
  • 97950a9fca Optionally consider RemoteAllocator heads Tame Nathaniel Wesley Filardo 2021-10-12 02:11:57 +01:00
  • 96155db640 Collect freelist things in a namespace Nathaniel Wesley Filardo 2021-10-08 16:45:00 +01:00
  • bc365e0abb Default template args for FreeObject & friends Nathaniel Wesley Filardo 2021-10-08 13:57:48 +01:00