aboutsummaryrefslogtreecommitdiff
path: root/docs/specs/fw_cfg.txt
diff options
context:
space:
mode:
authorGabriel L. Somlo <somlo@cmu.edu>2015-10-08 17:02:53 +0200
committerGerd Hoffmann <kraxel@redhat.com>2015-10-19 15:26:53 +0200
commit57c3d238a5ff7e7ad7aba098b5d55d8d89c2a6a1 (patch)
treeeda4079e6dadb822b9c3f03cb84dcf346406141b /docs/specs/fw_cfg.txt
parent6407d76eb4e5b5dd4af8613cef0162f31ff739ed (diff)
downloadqemu-57c3d238a5ff7e7ad7aba098b5d55d8d89c2a6a1.zip
qemu-57c3d238a5ff7e7ad7aba098b5d55d8d89c2a6a1.tar.gz
qemu-57c3d238a5ff7e7ad7aba098b5d55d8d89c2a6a1.tar.bz2
fw_cfg: document fw_cfg_modify_iXX() update functions
Document the behavior of fw_cfg_modify_iXX() for leak-less updating of integer-type blobs. Currently only fw_cfg_modify_i16() is coded, but 32- and 64-bit versions may be added later if necessary.. Signed-off-by: Gabriel Somlo <somlo@cmu.edu> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'docs/specs/fw_cfg.txt')
-rw-r--r--docs/specs/fw_cfg.txt11
1 files changed, 11 insertions, 0 deletions
diff --git a/docs/specs/fw_cfg.txt b/docs/specs/fw_cfg.txt
index c0e76aa..d5dee4b 100644
--- a/docs/specs/fw_cfg.txt
+++ b/docs/specs/fw_cfg.txt
@@ -159,6 +159,17 @@ will convert a 16-, 32-, or 64-bit integer to little-endian, then add
a dynamically allocated copy of the appropriately sized item to fw_cfg
under the given selector key value.
+== fw_cfg_modify_iXX() ==
+
+Modify the value of an XX-bit item (where XX may be 16, 32, or 64).
+Similarly to the corresponding fw_cfg_add_iXX() function set, convert
+a 16-, 32-, or 64-bit integer to little endian, create a dynamically
+allocated copy of the required size, and replace the existing item at
+the given selector key value with the newly allocated one. The previous
+item, assumed to have been allocated during an earlier call to
+fw_cfg_add_iXX() or fw_cfg_modify_iXX() (of the same width XX), is freed
+before the function returns.
+
== fw_cfg_add_file() ==
Given a filename (i.e., fw_cfg item name), starting pointer, and size,