genode/repos/gems/src/app/cbe_init
Martin Stein 3e375e4315 cbe tools: log less by default
Previously unconditional calls to Genode::log in cbe init and the cbe trust
anchor VFS plugin were made dependent on a verbosity flag that is set to
"false" by default.

Ref #4032
2021-10-13 14:50:46 +02:00
..
config.xsd gems: import Genode-specific code of the CBE 2020-11-27 09:19:08 +01:00
main.cc cbe tools: log less by default 2021-10-13 14:50:46 +02:00
README gems: import Genode-specific code of the CBE 2020-11-27 09:19:08 +01:00
target.mk gems: import Genode-specific code of the CBE 2020-11-27 09:19:08 +01:00

The cbe_init component creates a fresh CBE device (virtual block device,
free tree and superblocks) on a back-end block-device according to the
configured parameters. On success, the component exits with exit value 0,
otherwise with exit value -1.


Configuration
~~~~~~~~~~~~~

This is an example configuration of the component which shows the default
value for each attribute except 'config.dst_ip' and 'config.interface':

! <config>
!    <virtual-block-device
!       nr_of_levels="4"
!       nr_of_children="64"
!       nr_of_leafs="8192" />
!
!    <free-tree
!       nr_of_levels="3"
!       nr_of_children="64"
!       nr_of_leafs="1024" />
! </config>

This is a short description of the tags and attributes:

:config.virtual-block-device:
  Mandatory. Contains parameters for the tree that represents the virtual
  block device.

:config.virtual-block-device.nr_of_levels:
  Mandatory. Number of tree levels including the leafs and the root.

:config.virtual-block-device.nr_of_children:
  Mandatory. The tree degree or number of children for each inner node of the
  tree.

:config.virtual-block-device.nr_of_leafs:
  Mandatory. The number of leafs of the tree that are used. This defines the
  number of virtual blocks available to the CBE device. This number must be
  less or equal the number of leafs of the tree, which results from the number
  of tree levels and the tree degree.

:config.free-tree:
  Mandatory. Contains parameters for the tree that is used for managing the
  spare blocks of the CBE device.

:config.free-tree.nr_of_levels:
  Mandatory. Number of tree levels including the leafs and the root.

:config.free-tree.nr_of_children:
  Mandatory. The tree degree or number of children for each inner node of the
  tree.

:config.free-tree.nr_of_leafs:
  Mandatory. The number of leafs of the tree that are used. This defines the
  number of spare blocks available to the CBE device. This number must be less
  or equal the number of leafs of the tree, which results from the number of
  tree levels and the tree degree.


Sessions
~~~~~~~~

This is an overview of the sessions required and provided by the
component apart from the environment sessions:

* Requires one Block session.


Examples
~~~~~~~~

An example of how to use the cbe_init component can be found in the test script
'cbe/run/cbe_init_dev.run'.