Skip to content

Commit

Permalink
docs: use consistent markup for footnotes
Browse files Browse the repository at this point in the history
Unfortunately, the definition of the footnote syntax requires
the author to use the awkward escaped space "\ " in the really common
case of "footnote marker at end of word or sentence"; and in fact the rST
documentation's examples of footnote syntax contain only artificial
examples that do *not* use the syntax.  This resulted in ugly rendering
of footnotes throughout QEMU's documentation.  Ensure the space is escaped
whenever the footnote must attach to the preceding word, and also use
a named reference for clarity.

Reviewed-by: Peter Maydell <[email protected]>
Signed-off-by: Paolo Bonzini <[email protected]>
  • Loading branch information
bonzini committed Oct 11, 2024
1 parent 232c3a8 commit 381d2c3
Show file tree
Hide file tree
Showing 6 changed files with 11 additions and 11 deletions.
6 changes: 3 additions & 3 deletions docs/devel/atomics.rst
Original file line number Diff line number Diff line change
Expand Up @@ -204,15 +204,15 @@ They come in six kinds:
before the second with respect to the other components of the system.
Therefore, unlike ``smp_rmb()`` or ``qatomic_load_acquire()``,
``smp_read_barrier_depends()`` can be just a compiler barrier on
weakly-ordered architectures such as Arm or PPC\ [#]_.
weakly-ordered architectures such as Arm or PPC\ [#alpha]_.

Note that the first load really has to have a _data_ dependency and not
a control dependency. If the address for the second load is dependent
on the first load, but the dependency is through a conditional rather
than actually loading the address itself, then it's a _control_
dependency and a full read barrier or better is required.

.. [#] The DEC Alpha is an exception, because ``smp_read_barrier_depends()``
.. [#alpha] The DEC Alpha is an exception, because ``smp_read_barrier_depends()``
needs a processor barrier. On strongly-ordered architectures such
as x86 or s390, ``smp_rmb()`` and ``qatomic_load_acquire()`` can
also be compiler barriers only.
Expand Down Expand Up @@ -295,7 +295,7 @@ Acquire/release pairing and the *synchronizes-with* relation
------------------------------------------------------------

Atomic operations other than ``qatomic_set()`` and ``qatomic_read()`` have
either *acquire* or *release* semantics [#rmw]_. This has two effects:
either *acquire* or *release* semantics\ [#rmw]_. This has two effects:

.. [#rmw] Read-modify-write operations can have both---acquire applies to the
read part, and release to the write.
Expand Down
2 changes: 1 addition & 1 deletion docs/devel/build-system.rst
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,7 @@ into each emulator:

``default-configs/targets/*.mak``
These files mostly define symbols that appear in the ``*-config-target.h``
file for each emulator [#cfgtarget]_. However, the ``TARGET_ARCH``
file for each emulator\ [#cfgtarget]_. However, the ``TARGET_ARCH``
and ``TARGET_BASE_ARCH`` will also be used to select the ``hw/`` and
``target/`` subdirectories that are compiled into each target.

Expand Down
2 changes: 1 addition & 1 deletion docs/devel/loads-stores.rst
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ guest CPU state in case of a guest CPU exception. This is passed
to ``cpu_restore_state()``. Therefore the value should either be 0,
to indicate that the guest CPU state is already synchronized, or
the result of ``GETPC()`` from the top level ``HELPER(foo)``
function, which is a return address into the generated code [#gpc]_.
function, which is a return address into the generated code\ [#gpc]_.

.. [#gpc] Note that ``GETPC()`` should be used with great care: calling
it in other functions that are *not* the top level
Expand Down
4 changes: 2 additions & 2 deletions docs/devel/maintainers.rst
Original file line number Diff line number Diff line change
Expand Up @@ -99,9 +99,9 @@ members of the QEMU community, you should make arrangements to attend
a `KeySigningParty <https://wiki.qemu.org/KeySigningParty>`__ (for
example at KVM Forum) or make alternative arrangements to have your
key signed by an attendee. Key signing requires meeting another
community member **in person** [#]_ so please make appropriate
community member **in person**\ [#2020]_ so please make appropriate
arrangements.

.. [#] In recent pandemic times we have had to exercise some
.. [#2020] In recent pandemic times we have had to exercise some
flexibility here. Maintainers still need to sign their pull
requests though.
4 changes: 2 additions & 2 deletions docs/devel/migration/mapped-ram.rst
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ Use-cases

The mapped-ram feature was designed for use cases where the migration
stream will be directed to a file in the filesystem and not
immediately restored on the destination VM [#]_. These could be
immediately restored on the destination VM\ [#alternatives]_. These could be
thought of as snapshots. We can further categorize them into live and
non-live.

Expand All @@ -70,7 +70,7 @@ mapped-ram in this scenario is portability since background-snapshot
depends on async dirty tracking (KVM_GET_DIRTY_LOG) which is not
supported outside of Linux.

.. [#] While this same effect could be obtained with the usage of
.. [#alternatives] While this same effect could be obtained with the usage of
snapshots or the ``file:`` migration alone, mapped-ram provides
a performance increase for VMs with larger RAM sizes (10s to
100s of GiBs), specially if the VM has been stopped beforehand.
Expand Down
4 changes: 2 additions & 2 deletions docs/specs/fw_cfg.rst
Original file line number Diff line number Diff line change
Expand Up @@ -54,11 +54,11 @@ Data Register
-------------

* Read/Write (writes ignored as of QEMU v2.4, but see the DMA interface)
* Location: platform dependent (IOport [#]_ or MMIO)
* Location: platform dependent (IOport\ [#placement]_ or MMIO)
* Width: 8-bit (if IOport), 8/16/32/64-bit (if MMIO)
* Endianness: string-preserving

.. [#]
.. [#placement]
On platforms where the data register is exposed as an IOport, its
port number will always be one greater than the port number of the
selector register. In other words, the two ports overlap, and can not
Expand Down

0 comments on commit 381d2c3

Please sign in to comment.