mirror of
https://github.com/python/cpython.git
synced 2025-11-24 20:30:18 +00:00
gh-131591: fix formatting of remote debugger docs (#137225)
Some checks are pending
Tests / Windows MSI (push) Blocked by required conditions
Tests / Sanitizers (push) Blocked by required conditions
Tests / (push) Blocked by required conditions
Tests / Change detection (push) Waiting to run
Tests / Docs (push) Blocked by required conditions
Tests / Check if Autoconf files are up to date (push) Blocked by required conditions
Tests / Check if generated files are up to date (push) Blocked by required conditions
Tests / Ubuntu SSL tests with OpenSSL (push) Blocked by required conditions
Tests / Ubuntu SSL tests with AWS-LC (push) Blocked by required conditions
Tests / Android (aarch64) (push) Blocked by required conditions
Tests / Android (x86_64) (push) Blocked by required conditions
Tests / WASI (push) Blocked by required conditions
Tests / Hypothesis tests on Ubuntu (push) Blocked by required conditions
Tests / Address sanitizer (push) Blocked by required conditions
Tests / Cross build Linux (push) Blocked by required conditions
Tests / CIFuzz (push) Blocked by required conditions
Tests / All required checks pass (push) Blocked by required conditions
Lint / lint (push) Waiting to run
mypy / Run mypy on Lib/_pyrepl (push) Waiting to run
mypy / Run mypy on Lib/test/libregrtest (push) Waiting to run
mypy / Run mypy on Lib/tomllib (push) Waiting to run
mypy / Run mypy on Tools/build (push) Waiting to run
mypy / Run mypy on Tools/cases_generator (push) Waiting to run
mypy / Run mypy on Tools/clinic (push) Waiting to run
mypy / Run mypy on Tools/jit (push) Waiting to run
mypy / Run mypy on Tools/peg_generator (push) Waiting to run
Some checks are pending
Tests / Windows MSI (push) Blocked by required conditions
Tests / Sanitizers (push) Blocked by required conditions
Tests / (push) Blocked by required conditions
Tests / Change detection (push) Waiting to run
Tests / Docs (push) Blocked by required conditions
Tests / Check if Autoconf files are up to date (push) Blocked by required conditions
Tests / Check if generated files are up to date (push) Blocked by required conditions
Tests / Ubuntu SSL tests with OpenSSL (push) Blocked by required conditions
Tests / Ubuntu SSL tests with AWS-LC (push) Blocked by required conditions
Tests / Android (aarch64) (push) Blocked by required conditions
Tests / Android (x86_64) (push) Blocked by required conditions
Tests / WASI (push) Blocked by required conditions
Tests / Hypothesis tests on Ubuntu (push) Blocked by required conditions
Tests / Address sanitizer (push) Blocked by required conditions
Tests / Cross build Linux (push) Blocked by required conditions
Tests / CIFuzz (push) Blocked by required conditions
Tests / All required checks pass (push) Blocked by required conditions
Lint / lint (push) Waiting to run
mypy / Run mypy on Lib/_pyrepl (push) Waiting to run
mypy / Run mypy on Lib/test/libregrtest (push) Waiting to run
mypy / Run mypy on Lib/tomllib (push) Waiting to run
mypy / Run mypy on Tools/build (push) Waiting to run
mypy / Run mypy on Tools/cases_generator (push) Waiting to run
mypy / Run mypy on Tools/clinic (push) Waiting to run
mypy / Run mypy on Tools/jit (push) Waiting to run
mypy / Run mypy on Tools/peg_generator (push) Waiting to run
This commit is contained in:
parent
3663b2ad54
commit
eac37b46d9
1 changed files with 11 additions and 11 deletions
|
|
@ -374,13 +374,13 @@ To locate a thread:
|
|||
reliable thread to target.
|
||||
|
||||
3. Optionally, use the offset ``interpreter_state.threads_head`` to iterate
|
||||
through the linked list of all thread states. Each ``PyThreadState`` structure
|
||||
contains a ``native_thread_id`` field, which may be compared to a target thread
|
||||
ID to find a specific thread.
|
||||
through the linked list of all thread states. Each ``PyThreadState``
|
||||
structure contains a ``native_thread_id`` field, which may be compared to
|
||||
a target thread ID to find a specific thread.
|
||||
|
||||
1. Once a valid ``PyThreadState`` has been found, its address can be used in
|
||||
later steps of the protocol, such as writing debugger control fields and
|
||||
scheduling execution.
|
||||
4. Once a valid ``PyThreadState`` has been found, its address can be used in
|
||||
later steps of the protocol, such as writing debugger control fields and
|
||||
scheduling execution.
|
||||
|
||||
The following is an example implementation that locates the main thread state::
|
||||
|
||||
|
|
@ -454,15 +454,15 @@ its fields are defined by the ``_Py_DebugOffsets`` structure and include the
|
|||
following:
|
||||
|
||||
- ``debugger_script_path``: A fixed-size buffer that holds the full path to a
|
||||
Python source file (``.py``). This file must be accessible and readable by
|
||||
the target process when execution is triggered.
|
||||
Python source file (``.py``). This file must be accessible and readable by
|
||||
the target process when execution is triggered.
|
||||
|
||||
- ``debugger_pending_call``: An integer flag. Setting this to ``1`` tells the
|
||||
interpreter that a script is ready to be executed.
|
||||
interpreter that a script is ready to be executed.
|
||||
|
||||
- ``eval_breaker``: A field checked by the interpreter during execution.
|
||||
Setting bit 5 (``_PY_EVAL_PLEASE_STOP_BIT``, value ``1U << 5``) in this
|
||||
field causes the interpreter to pause and check for debugger activity.
|
||||
Setting bit 5 (``_PY_EVAL_PLEASE_STOP_BIT``, value ``1U << 5``) in this
|
||||
field causes the interpreter to pause and check for debugger activity.
|
||||
|
||||
To complete the injection, the debugger must perform the following steps:
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue