aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSantosh Sivaraj <santosh@fossix.org>2019-01-18 09:22:13 +0530
committerStewart Smith <stewart@linux.ibm.com>2019-02-25 21:59:03 -0600
commitc86fb12c07a6dc7d878503c1d8ff2de705bf61d7 (patch)
treefa7ef3f14226183cc52e753dae6fd4b7218c55ea /include
parent3ac2db0a83e70bb7768c64b3fbf480e326c07d10 (diff)
downloadskiboot-c86fb12c07a6dc7d878503c1d8ff2de705bf61d7.zip
skiboot-c86fb12c07a6dc7d878503c1d8ff2de705bf61d7.tar.gz
skiboot-c86fb12c07a6dc7d878503c1d8ff2de705bf61d7.tar.bz2
imc/catalog: Decompress catalog asynchronously
In-Memory Collection(IMC) counters catalog is compressed blob which is loaded from the flash; decompression starts once the data is loaded from nvram by the main thread. This can be optimized by using the libxz API function which creates a job to do the decompression by not blocking the main thread. Refactor decompress() to use the libxz asynchronous wrapper functions. This also cleans up the error handling path in imc_init(). CC: Madhavan Srinivasan <maddy@linux.vnet.ibm.com> Signed-off-by: Santosh Sivaraj <santosh@fossix.org> Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
Diffstat (limited to 'include')
-rw-r--r--include/imc.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/imc.h b/include/imc.h
index f3d906e..c261629 100644
--- a/include/imc.h
+++ b/include/imc.h
@@ -130,6 +130,7 @@ struct imc_chip_cb
void imc_init(void);
void imc_catalog_preload(void);
+void imc_decompress_catalog(void);
#define MAX_NEST_COMBINED_UNITS 4
struct combined_units_node {