Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

stop and scan all procs sharing a vmspace #1640

Draft
wants to merge 3 commits into
base: dev
Choose a base branch
from

Commits on Jul 25, 2024

  1. vmspace: maintain a list of active processes

    This will allow us to efficently act on all processes sharing a vmspace
    (important with co-processes).
    brooksdavis committed Jul 25, 2024
    Configuration menu
    Copy the full SHA
    0340fc6 View commit details
    Browse the repository at this point in the history
  2. vmspace: add interfaces stop/resume all procs

    stop_vmspace_proc() and resume_vmspace_proc() respectively stop and
    resume all processes but curproc associated with the vmspace of a
    given process.  Functionally this the same a (stop|resume)_all_proc()
    except that it walks the vmspace process list rather than allproc.
    
    For each process use a new thread_single(SINGLE_VMSPACE) which acts like
    SINGLE_BOUNDRY except that like SINGLE_ALLPROC it suspends all threads
    in the process and does not expect proc to be curproc.
    brooksdavis committed Jul 25, 2024
    Configuration menu
    Copy the full SHA
    fdb9c4b View commit details
    Browse the repository at this point in the history
  3. caprevoke: stop and scan all procs sharing our vmspace

    In addition to thread_single() on the revoking process, call
    stop_vmspace_proc() to stop all other processes that share our
    vmspace.  Then revoke the horders for each thread and process sharing
    the vmspace.
    brooksdavis committed Jul 25, 2024
    Configuration menu
    Copy the full SHA
    159c084 View commit details
    Browse the repository at this point in the history