Re: [PATCH net-next RFC v2 13/13] devlink: Add Documentation/networking/devlink/devlink-reload.rst

From: Jiri Pirko
Date: Mon Aug 17 2020 - 13:22:31 EST


Mon, Aug 17, 2020 at 11:37:52AM CEST, moshe@xxxxxxxxxxxx wrote:
>Add devlink reload rst documentation file.
>Update index file to include it.
>
>Signed-off-by: Moshe Shemesh <moshe@xxxxxxxxxxxx>
>---
>- Instead of reload levels driver,fw_reset,fw_live_patch have reload
> actions driver_reinit,fw_activate,fw_live_patch
>---
> .../networking/devlink/devlink-reload.rst | 54 +++++++++++++++++++
> Documentation/networking/devlink/index.rst | 1 +
> 2 files changed, 55 insertions(+)
> create mode 100644 Documentation/networking/devlink/devlink-reload.rst
>
>diff --git a/Documentation/networking/devlink/devlink-reload.rst b/Documentation/networking/devlink/devlink-reload.rst
>new file mode 100644
>index 000000000000..9846ea727f3b
>--- /dev/null
>+++ b/Documentation/networking/devlink/devlink-reload.rst
>@@ -0,0 +1,54 @@
>+.. SPDX-License-Identifier: GPL-2.0
>+
>+==============
>+Devlink Reload
>+==============
>+
>+``devlink-reload`` provides mechanism to either reload driver entities,
>+applying ``devlink-params`` and ``devlink-resources`` new values or firmware
>+activation depends on reload action selected.
>+
>+Reload actions
>+=============
>+
>+User may select a reload action.
>+By default ``driver_reinit`` action is done.
>+
>+.. list-table:: Possible reload actions
>+ :widths: 5 90
>+
>+ * - Name
>+ - Description
>+ * - ``driver-reinit``
>+ - Driver entities re-initialization, including applying
>+ new values to devlink entities which are used during driver
>+ load such as ``devlink-params`` in configuration mode
>+ ``driverinit`` or ``devlink-resources``
>+ * - ``fw_activate``
>+ - Firmware activate. Can be used for firmware reload or firmware
>+ upgrade if new firmware is stored and driver supports such
>+ firmware upgrade.

Does this do the same as "driver-reinit" + fw activation? If yes, it
should be written here. If no, it should be written here as well.


>+ * - ``fw_live_patch``
>+ - Firmware live patch, applies firmware changes without reset.
>+
>+Change namespace
>+================
>+
>+All devlink instances are created in init_net and stay there for a
>+lifetime. Allow user to be able to move devlink instances into
>+namespaces during devlink reload operation. That ensures proper
>+re-instantiation of driver objects, including netdevices.
>+
>+example usage
>+-------------
>+
>+.. code:: shell
>+
>+ $ devlink dev reload help
>+ $ devlink dev reload DEV [ netns { PID | NAME | ID } ] [ action { fw_live_patch | driver_reinit | fw_activate } ]
>+
>+ # Run reload command for devlink driver entities re-initialization:
>+ $ devlink dev reload pci/0000:82:00.0 action driver_reinit
>+
>+ # Run reload command to activate firmware:
>+ $ devlink dev reload pci/0000:82:00.0 action fw_activate
>diff --git a/Documentation/networking/devlink/index.rst b/Documentation/networking/devlink/index.rst
>index 7684ae5c4a4a..d82874760ae2 100644
>--- a/Documentation/networking/devlink/index.rst
>+++ b/Documentation/networking/devlink/index.rst
>@@ -20,6 +20,7 @@ general.
> devlink-params
> devlink-region
> devlink-resource
>+ devlink-reload
> devlink-trap
>
> Driver-specific documentation
>--
>2.17.1
>