1. 23 Jun, 2022 7 commits
  2. 25 Apr, 2022 1 commit
    • Werner Lewis's avatar
      Morello: Fix mallocng mmap double slot logic · 4111f17d
      Werner Lewis authored
      GRP_SIZE in Morello is two UNITs, which causes existing logic to fail
      when allocating two slots in a page with zero remainder, as the slot
      and header exceed half the page size. This is modified to allow for
      this case to be correctly supported.
      
      Change-Id: I4a10f1bc1213bf2b555381ee052bb006c5bf442d
      4111f17d
  3. 14 Apr, 2022 2 commits
  4. 13 Apr, 2022 18 commits
    • Werner Lewis's avatar
      Morello: Fix mallocng · 0f325712
      Werner Lewis authored
       - Fix size_classes for Morello
       - Fix size_to_class for Morello
      
      In mallocng, size classes are selected to minimize the remainder in a
      page, with every fourth having zero remainder for allocation of a group
      with one slot. For Morello, the size of the group header is doubled,
      causing the size classes to be misaligned with page boundaries, causing
      errors where alignment is assumed.
      
      Size classes are adjusted to realign with page boundaries, and a check
      added to prevent out-of-slot offsets.
      
      Conversion of malloc length to size class is fixed to account for the
      increased group header size for Morello.
      
      Change-Id: Id22d66d78d3c027f539327fe4b34b980a0ea3da8
      0f325712
    • Tudor Cretu's avatar
      Morello: Fix stpncpy · 37eda9db
      Tudor Cretu authored
      Change-Id: I8302b6e363ae8001cc4966f337e00cb41051c206
      37eda9db
    • Tamas Petz's avatar
      Morello: Add more pthread_cancel tests · 4d2f2c61
      Tamas Petz authored
      These tests now check the following cases:
        1. Async cancellation when a thread is not at a
           cancellation point at the time of a cancel.
        2. Async cancellation when a thread is at a
           cancellation point at the time of a cancel.
        3. Deferred cancellation when a thread is not at a
           cancellation point at the time of a cancel.
        4. Deferred cancellation when a thread is at a
           cancellation point at the time of a cancel.
        5. Async cancellation when cancellation is disabled.
        6. Deferred cancellation when cancellation is disabled.
        7. [extension] Async cancellation with cancellation
           masked.
        8. [extension] Deferred cancellation with cancellation
           masked.
      
      Change-Id: I93cfd6dd8559a4bae12909b52c1b962c66db250e
      4d2f2c61
    • Yury Khrustalev's avatar
      Morello: Remove flaky mark from most of the tests · 1d7df6fe
      Yury Khrustalev authored
      Change-Id: Ifc390b9249263fd5a8aec079cc62a00c0017e8ec
      1d7df6fe
    • Tamas Petz's avatar
      Morello: Fixup change Make printf() work for generic CHERI · 86cf8765
      Tamas Petz authored
      That change introduced a bug when printing permissions
      of capabilitites. Found by manual code inspection.
      
      Change-Id: I45eeed37b06275af52191755684be1dbc89bd551
      86cf8765
    • Tamas Petz's avatar
      Morello: Build libshim with debug if --enable-debug is set · 5097699d
      Tamas Petz authored
      Change-Id: Iee562eac71c6c8aabb3e352d5c81ab5b9e760c6d
      5097699d
    • Tudor Cretu's avatar
      Morello: Fix memmove for Morello · ed75f078
      Tudor Cretu authored
      The change allows memmove to copy capability tags
      for every 16-byte aligned address.
      
      Change-Id: I5ed5c4303db9bdf8f2572dc425f0092d6462fc6b
      ed75f078
    • Werner Lewis's avatar
      Morello: Disable SA_RESTORER for Morello · cb7ba461
      Werner Lewis authored
      Change-Id: I50b31806cbb7b7927f769fb09e3c957976b9c1eb
      cb7ba461
    • Yury Khrustalev's avatar
      Morello: Set DDC to null when libshim is used. · 686a42c2
      Yury Khrustalev authored
      Change-Id: Ieeaecc79add6ae821fdd280daecf63ac46a430ed
      686a42c2
    • Jack Bond-Preston's avatar
      Morello: Improve portability of tests between Morello platforms · b37c2fd8
      Jack Bond-Preston authored
      Ensure these tests pass on Morello model (while still testing the
      required functionality).
      
      Change-Id: I7ea32875235221770a1a9e0a34d0aa6c62e0d448
      b37c2fd8
    • Werner Lewis's avatar
      Morello: Use start capability for fini_array accesses · fc8f9f68
      Werner Lewis authored
      Change-Id: Id8400143db475a2dc2493ccf5d11b1b26e7031dc
      fc8f9f68
    • Tudor Cretu's avatar
      Morello: Fix out of bounds access in mbsrtowcs · 993c9cd5
      Tudor Cretu authored
      Previously, the bitwise operations would detect the null character at
      the end of the string by reading the next 4 chars, even if they were
      out of bounds. This is not allowed in Morello, so a bounds check is
      added before the access. If the next 4 chars access would cross the
      limit of the capability, the algorithm resumes to handling each char
      independently.
      
      Change-Id: I305b219f9e9e7b9616cb66cb36425b6e4e84f887
      993c9cd5
    • Werner Lewis's avatar
      Morello: Add various filestream, exit tests · 78ec8354
      Werner Lewis authored
      Change-Id: I0acff14e3a72b1a1e72f74e1692574608220b87c
      78ec8354
    • Yury Khrustalev's avatar
      Morello: Remove MORELLO define · 5c393252
      Yury Khrustalev authored
       - This define is replaced by the compiler macro __CHERI_PURE_CAPABILITY__.
       - This patch also removes inconsistently implemented macro
         MORELLO_ENABLE_SUBOBJECT_BOUNDS.
       - Remove morello_init_array and morello_fini_array symbols.
      
      Change-Id: I910b2fd364785dc0eb7ea0179d01c49b703c3522
      5c393252
    • Murray Steele's avatar
      Morello: Prepare for shared library support · 9d019002
      Murray Steele authored
       - Enable selected dynamic library tests for use in libc-test.
       - Prefer -print-libgcc-file-name to -print-file-name in configure
       - Make existing dynamic linker code capability-friendly
       - Enable LDSO objects for Morello
      
      Change-Id: Ie8c9ca3dff11e3262e8fbbf6c14270302568258f
      9d019002
    • Werner Lewis's avatar
      Morello: Use Morello memcpy/memset from AOR · 026d547e
      Werner Lewis authored
      Change-Id: I024ef260039fd4f1c71207c02bc0648c3f650121
      026d547e
    • Werner Lewis's avatar
      Avoid modifying input in basename/dirname · cb7971b3
      Werner Lewis authored
      Change-Id: Ib0b5f562807655417b26dd84336ce4fb75f6719f
      cb7971b3
    • Jack Bond-Preston's avatar
      Add tests for various functions · fec671be
      Jack Bond-Preston authored
      Change-Id: Ia3abd285ac667f075c641f72009c97687cec04bd
      fec671be
  5. 25 Feb, 2022 8 commits
  6. 10 Feb, 2022 4 commits