Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: unikraft/lib-pthread-embedded
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: staging
Choose a base ref
...
head repository: marcrittinghaus/lib-pthread-embedded
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: staging
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 2 commits
  • 2 files changed
  • 1 contributor

Commits on Dec 3, 2021

  1. Temporarily remove warning to not freak out users

    Signed-off-by: Marc Rittinghaus <marc.rittinghaus@kit.edu>
    marcrittinghaus committed Dec 3, 2021
    Configuration menu
    Copy the full SHA
    55c4594 View commit details
    Browse the repository at this point in the history

Commits on Jan 27, 2022

  1. Fix use-after-free in glue code for pthread_join

    When pthread_join is called, we use uk_thread_wait to wait for the
    thread to exit. However, this will also release the thread and the
    metadata for the pthread in the glue code. pthread_join then calls
    pthread_detach, which attempts another wait, accessing the freed
    thread.
    
    The commit changes the pte_osThreadHandle to point to the
    metadata in the glue code instead of the thread itself and prevents
    the metadata from being released on exit of the uk thread. This way,
    pthread_detach can detect that the thread has already been released.
    Metadata is freed in pte_osThreadDelete (would have caused a double
    free before the patch).
    
    Signed-off-by: Marc Rittinghaus <marc.rittinghaus@kit.edu>
    marcrittinghaus committed Jan 27, 2022
    Configuration menu
    Copy the full SHA
    5965d40 View commit details
    Browse the repository at this point in the history
Loading