diff options
author | Stewart Smith <stewart@linux.ibm.com> | 2018-07-15 22:20:11 -0500 |
---|---|---|
committer | Stewart Smith <stewart@linux.ibm.com> | 2018-07-16 23:48:30 -0500 |
commit | 06808a037d44231ba36e814ff1dbf66bc8b707da (patch) | |
tree | 60ebb92c635887ff587144b442a3c3f3f714b299 /include/device.h | |
parent | 5bf03755a972f2a120731051a6fe52a597672e39 (diff) | |
download | blackbird-skiboot-06808a037d44231ba36e814ff1dbf66bc8b707da.tar.gz blackbird-skiboot-06808a037d44231ba36e814ff1dbf66bc8b707da.zip |
fast-reboot: parallel memory clearing
Arbitrarily pick 16GB as the unit of parallelism, and
split up clearing memory into jobs and schedule them
node-local to the memory (or on node 0 if we can't
work that out because it's the memory up to SKIBOOT_BASE)
This seems to cut at least ~40% time from memory zeroing on
fast-reboot on a 256GB Boston system.
Signed-off-by: Stewart Smith <stewart@linux.ibm.com>
Diffstat (limited to 'include/device.h')
-rw-r--r-- | include/device.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/include/device.h b/include/device.h index fd66df11..a447dcd4 100644 --- a/include/device.h +++ b/include/device.h @@ -237,9 +237,12 @@ u32 dt_n_size_cells(const struct dt_node *node); u64 dt_get_number(const void *pdata, unsigned int cells); /* Find an ibm,chip-id property in this node; if not found, walk up the parent - * nodes. Returns -1 if no chip-id property exists. */ + * nodes. */ u32 dt_get_chip_id(const struct dt_node *node); +/* Same as dt_get_chip_id except Returns -1 if no chip-id property exists. */ +u32 __dt_get_chip_id(const struct dt_node *node); + /* Address accessors ("reg" properties parsing). No translation, * only support "simple" address forms (1 or 2 cells). Asserts * if address doesn't exist |