diff --git a/poky/documentation/ref-manual/variables.rst b/poky/documentation/ref-manual/variables.rst
index 6a7888a..ac5b97a 100644
--- a/poky/documentation/ref-manual/variables.rst
+++ b/poky/documentation/ref-manual/variables.rst
@@ -1320,7 +1320,7 @@
       This variable is specific to the :yocto_git:`GStreamer recipes
       </poky/tree/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb>`.
       It allows to build the GStreamer `"ugly"
-      <https://github.com/GStreamer/gst-plugins-ugly>`__  and
+      <https://github.com/GStreamer/gst-plugins-ugly>`__ and
       `"bad" <https://github.com/GStreamer/gst-plugins-bad>`__ audio plugins.
 
       See the :ref:`dev-manual/licenses:other variables related to commercial licenses`
@@ -1330,7 +1330,7 @@
       This variable is specific to the :yocto_git:`GStreamer recipes
       </poky/tree/meta/recipes-multimedia/gstreamer/gstreamer1.0-meta-base.bb>`.
       It allows to build the GStreamer `"ugly"
-      <https://github.com/GStreamer/gst-plugins-ugly>`__  and
+      <https://github.com/GStreamer/gst-plugins-ugly>`__ and
       `"bad" <https://github.com/GStreamer/gst-plugins-bad>`__ video plugins.
 
       See the :ref:`dev-manual/licenses:other variables related to commercial licenses`
@@ -2200,6 +2200,11 @@
       is included in the default value of
       :term:`OVERRIDES`.
 
+      Here is an example from :yocto_git:`meta-poky/conf/distro/poky-tiny.conf
+      </poky/tree/meta-poky/conf/distro/poky-tiny.conf>`::
+
+         DISTROOVERRIDES = "poky:poky-tiny"
+
    :term:`DL_DIR`
       The central download directory used by the build process to store
       downloads. By default, :term:`DL_DIR` gets files suitable for mirroring
@@ -2756,12 +2761,11 @@
          FILES_SOLIBSDEV ?= "${base_libdir}/lib*${SOLIBSDEV} ${libdir}/lib*${SOLIBSDEV}"
 
    :term:`FILESEXTRAPATHS`
-      Extends the search path the OpenEmbedded build system uses when
-      looking for files and patches as it processes recipes and append
-      files. The default directories BitBake uses when it processes recipes
-      are initially defined by the :term:`FILESPATH`
-      variable. You can extend :term:`FILESPATH` variable by using
-      :term:`FILESEXTRAPATHS`.
+      A colon-separated list to extend the search path the OpenEmbedded build
+      system uses when looking for files and patches as it processes recipes
+      and append files. The default directories BitBake uses when it processes
+      recipes are initially defined by the :term:`FILESPATH` variable. You can
+      extend :term:`FILESPATH` variable by using :term:`FILESEXTRAPATHS`.
 
       Best practices dictate that you accomplish this by using
       :term:`FILESEXTRAPATHS` from within a ``.bbappend`` file and that you
@@ -2822,12 +2826,12 @@
       recipe to correctly extend the path.
 
    :term:`FILESOVERRIDES`
-      A subset of :term:`OVERRIDES` used by the OpenEmbedded build system for
-      creating :term:`FILESPATH`. The :term:`FILESOVERRIDES` variable uses
-      overrides to automatically extend the :term:`FILESPATH` variable. For an
-      example of how that works, see the :term:`FILESPATH` variable
-      description. Additionally, you find more information on how overrides
-      are handled in the
+      A colon-separated list to specify a subset of :term:`OVERRIDES` used by
+      the OpenEmbedded build system for creating :term:`FILESPATH`. The
+      :term:`FILESOVERRIDES` variable uses overrides to automatically extend
+      the :term:`FILESPATH` variable. For an example of how that works, see the
+      :term:`FILESPATH` variable description. Additionally, you find more
+      information on how overrides are handled in the
       ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:conditional syntax (overrides)`"
       section of the BitBake User Manual.
 
@@ -2842,8 +2846,8 @@
          build system.
 
    :term:`FILESPATH`
-      The default set of directories the OpenEmbedded build system uses
-      when searching for patches and files.
+      A colon-separated list specifying the default set of directories the
+      OpenEmbedded build system uses when searching for patches and files.
 
       During the build process, BitBake searches each directory in
       :term:`FILESPATH` in the specified order when looking for files and
@@ -5541,6 +5545,15 @@
       For additional information on how this variable is used, see the
       initialization script.
 
+   :term:`OEQA_REPRODUCIBLE_TEST_TARGET`
+      Set build target for build reproducibility testing. By default
+      all available recipes are compiled with "bitbake world", see also :term:`EXCLUDE_FROM_WORLD`
+      and :doc:`/test-manual/reproducible-builds`.
+
+   :term:`OEQA_REPRODUCIBLE_TEST_SSTATE_TARGETS`
+      Set build targets which can be rebuilt using :ref:`shared state <overview-manual/concepts:shared state cache>`
+      when running build reproducibility tests. See :doc:`/test-manual/reproducible-builds`.
+
    :term:`OLDEST_KERNEL`
       Declares the oldest version of the Linux kernel that the produced
       binaries must support. This variable is passed into the build of the
@@ -7568,9 +7581,10 @@
          SKIP_RECIPE[myrecipe] = "Not supported by our organization."
 
    :term:`SOC_FAMILY`
-      Groups together machines based upon the same family of SOC (System On
-      Chip). You typically set this variable in a common ``.inc`` file that
-      you include in the configuration files of all the machines.
+      A colon-separated list grouping together machines based upon the same
+      family of SoC (System On Chip). You typically set this variable in a
+      common ``.inc`` file that you include in the configuration files of all
+      the machines.
 
       .. note::
 
@@ -7942,7 +7956,7 @@
       that if you want to build a fixed revision and you want to avoid
       performing a query on the remote repository every time BitBake parses
       your recipe, you should specify a :term:`SRCREV` that is a full revision
-      identifier and not just a tag.
+      identifier (e.g. the full SHA hash in git) and not just a tag.
 
       .. note::
 
