qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Wainer dos Santos Moschetta <wainersm@redhat.com>
To: "Alex Bennée" <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, berrange@redhat.com, f4bug@amsat.org,
	stefanha@redhat.com
Subject: Re: [RFC PATCH] docs/devel: re-organise the developers guide into sections
Date: Wed, 24 Feb 2021 09:51:06 -0300	[thread overview]
Message-ID: <a03c1d90-d30b-e805-8466-4d6aa9bfb015@redhat.com> (raw)
In-Reply-To: <20210223105146.6695-1-alex.bennee@linaro.org>

Hi,

On 2/23/21 7:51 AM, Alex Bennée wrote:
> The list of sub-sections was getting a bit long and sporadically
> organised. Let's try and impose some order on this hairball of
> documentation.
>
> [AJB: RFC because I wonder if we should make a more concerted effort
> to move bits of the wiki into a canonical maintained document. There
> is also probably a need for a quickbuild or tldr section of the
> build-system for users who just want to build something.]
>
> Based-on: 20210223095931.16908-1-alex.bennee@linaro.org
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>   docs/devel/index.rst                 | 32 ++++++----------------------
>   docs/devel/multi-thread-tcg.rst      |  5 +++--
>   docs/devel/section-apis.rst          | 16 ++++++++++++++
>   docs/devel/section-building.rst      | 13 +++++++++++
>   docs/devel/section-concepts.rst      | 21 ++++++++++++++++++
>   docs/devel/section-process.rst       | 11 ++++++++++
>   docs/devel/section-tcg-emulation.rst | 19 +++++++++++++++++
>   docs/devel/section-testing.rst       | 20 +++++++++++++++++
>   docs/devel/tcg-icount.rst            |  6 +++---
>   docs/devel/testing.rst               |  6 +++---
>   10 files changed, 115 insertions(+), 34 deletions(-)
>   create mode 100644 docs/devel/section-apis.rst
>   create mode 100644 docs/devel/section-building.rst
>   create mode 100644 docs/devel/section-concepts.rst
>   create mode 100644 docs/devel/section-process.rst
>   create mode 100644 docs/devel/section-tcg-emulation.rst
>   create mode 100644 docs/devel/section-testing.rst
>
> diff --git a/docs/devel/index.rst b/docs/devel/index.rst
> index ae664da00c..2af7bf8736 100644
> --- a/docs/devel/index.rst
> +++ b/docs/devel/index.rst
> @@ -13,29 +13,9 @@ Contents:
>   .. toctree::
>      :maxdepth: 2
>   
> -   build-system
> -   style
> -   kconfig
> -   testing
> -   fuzzing
> -   control-flow-integrity
> -   loads-stores
> -   memory
> -   migration
> -   atomics
> -   stable-process
> -   qtest
> -   decodetree
> -   secure-coding-practices
> -   tcg
> -   tcg-icount
> -   tracing
> -   multi-thread-tcg
> -   tcg-plugins
> -   bitops
> -   reset
> -   s390-dasd-ipl
> -   clocks
> -   qom
> -   block-coroutine-wrapper
> -   multi-process
> +   section-building
> +   section-testing
> +   section-concepts
> +   section-apis
> +   section-tcg-emulation
> +   section-process

Just a fyi... yesterday I realized that the (current) TOC is not getting 
rendered on my Firefox (or chrome) browser:

https://gitlab.com/qemu-project/qemu/-/tree/master/docs/devel

- Wainer

> diff --git a/docs/devel/multi-thread-tcg.rst b/docs/devel/multi-thread-tcg.rst
> index 92a9eba13c..5b446ee08b 100644
> --- a/docs/devel/multi-thread-tcg.rst
> +++ b/docs/devel/multi-thread-tcg.rst
> @@ -4,8 +4,9 @@
>     This work is licensed under the terms of the GNU GPL, version 2 or
>     later. See the COPYING file in the top-level directory.
>   
> -Introduction
> -============
> +==================
> +Multi-threaded TCG
> +==================
>   
>   This document outlines the design for multi-threaded TCG (a.k.a MTTCG)
>   system-mode emulation. user-mode emulation has always mirrored the
> diff --git a/docs/devel/section-apis.rst b/docs/devel/section-apis.rst
> new file mode 100644
> index 0000000000..ab1f6bed60
> --- /dev/null
> +++ b/docs/devel/section-apis.rst
> @@ -0,0 +1,16 @@
> +*********
> +QEMU APIs
> +*********
> +
> +There are a number of APIs in QEMU and the following sections document
> +some of the most important ones. For tose that aren't documented here
> +you can also find notes on usage in the header definitions.
> +
> +.. toctree::
> +   :maxdepth: 2
> +
> +   atomics
> +   bitops
> +   loads-stores
> +   memory
> +   tracing
> diff --git a/docs/devel/section-building.rst b/docs/devel/section-building.rst
> new file mode 100644
> index 0000000000..e6e9fa1d6a
> --- /dev/null
> +++ b/docs/devel/section-building.rst
> @@ -0,0 +1,13 @@
> +*************
> +Building QEMU
> +*************
> +
> +The following sections deal with how the build system works, how it is
> +configured and some basic guidance on how code should be written.
> +
> +.. toctree::
> +   :maxdepth: 2
> +
> +   build-system
> +   kconfig
> +   style
> diff --git a/docs/devel/section-concepts.rst b/docs/devel/section-concepts.rst
> new file mode 100644
> index 0000000000..566c52e90a
> --- /dev/null
> +++ b/docs/devel/section-concepts.rst
> @@ -0,0 +1,21 @@
> +*************
> +QEMU Concepts
> +*************
> +
> +There are a number of high level concepts that are useful to
> +understand when working with the code base. Perhaps the most pervasive
> +is the QEMU Object Model (QOM) which underpins much of the flexibility
> +and configurable of the project. The following sections document that
> +as well as diving into other concepts that are useful to know if
> +working on some areas of the code.
> +
> +.. toctree::
> +   :maxdepth: 2
> +
> +   qom
> +   clocks
> +   reset
> +   block-coroutine-wrapper
> +   migration
> +   multi-process
> +   s390-dasd-ipl
> diff --git a/docs/devel/section-process.rst b/docs/devel/section-process.rst
> new file mode 100644
> index 0000000000..3b0ae4f19b
> --- /dev/null
> +++ b/docs/devel/section-process.rst
> @@ -0,0 +1,11 @@
> +===================
> +Development Process
> +===================
> +
> +The following sections detail aspects of the development process.
> +
> +.. toctree::
> +   :maxdepth: 2
> +
> +   secure-coding-practices
> +   stable-process
> diff --git a/docs/devel/section-tcg-emulation.rst b/docs/devel/section-tcg-emulation.rst
> new file mode 100644
> index 0000000000..81fa131de7
> --- /dev/null
> +++ b/docs/devel/section-tcg-emulation.rst
> @@ -0,0 +1,19 @@
> +*************
> +TCG Emulation
> +*************
> +
> +QEMU was originally built as an emulator capable of running binaries
> +for one architecture on another. The following sections describe the
> +internals of how the Just In Time (JIT) Tiny Code Generator (TCG)
> +works. You only really need to read this if you are interested in
> +adding new architectures or fixing existing architecture emulation.
> +
> +
> +.. toctree::
> +   :maxdepth: 2
> +
> +   tcg
> +   multi-thread-tcg
> +   tcg-icount
> +   decodetree
> +   tcg-plugins
> diff --git a/docs/devel/section-testing.rst b/docs/devel/section-testing.rst
> new file mode 100644
> index 0000000000..c93ff4c4dd
> --- /dev/null
> +++ b/docs/devel/section-testing.rst
> @@ -0,0 +1,20 @@
> +***************
> +Testing in QEMU
> +***************
> +
> +QEMU is a large and complex project which can be configured in a
> +multitude of ways. As it's impossible for an individual developer to
> +manually test all of these we rely on a whole suite of automated
> +testing approaches to ensure regressions are kept to a minimum.
> +
> +The following sections give a broad overview of the testing
> +infrastructure as well as some detailed introductions into more
> +advanced testing topics.
> +
> +.. toctree::
> +   :maxdepth: 2
> +
> +   testing
> +   fuzzing
> +   control-flow-integrity
> +   qtest
> diff --git a/docs/devel/tcg-icount.rst b/docs/devel/tcg-icount.rst
> index 8d67b6c076..eb990b0976 100644
> --- a/docs/devel/tcg-icount.rst
> +++ b/docs/devel/tcg-icount.rst
> @@ -3,9 +3,9 @@
>      Written by Alex Bennée
>   
>   
> -========================
> -TCG Instruction Counting
> -========================
> +=================================
> +TCG Instruction Counting (icount)
> +=================================
>   
>   TCG has long supported a feature known as icount which allows for
>   instruction counting during execution. This should not be confused
> diff --git a/docs/devel/testing.rst b/docs/devel/testing.rst
> index 3124ee2470..a69db8ab93 100644
> --- a/docs/devel/testing.rst
> +++ b/docs/devel/testing.rst
> @@ -1,6 +1,6 @@
> -===============
> -Testing in QEMU
> -===============
> +=======
> +Testing
> +=======
>   
>   This document describes the testing infrastructure in QEMU.
>   



  parent reply	other threads:[~2021-02-24 12:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-23 10:51 [RFC PATCH] docs/devel: re-organise the developers guide into sections Alex Bennée
2021-02-23 11:13 ` Peter Maydell
2021-02-24 11:57 ` Stefan Hajnoczi
2021-02-24 12:51 ` Wainer dos Santos Moschetta [this message]
2021-02-24 13:15   ` Peter Maydell
2021-02-24 13:39     ` Wainer dos Santos Moschetta

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a03c1d90-d30b-e805-8466-4d6aa9bfb015@redhat.com \
    --to=wainersm@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=berrange@redhat.com \
    --cc=f4bug@amsat.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).