coreboot-kgpe-d16/util
Aaron Durbin 46300aa2ce util/cbmem: be explicit about memory map sizes
The cbmem utility has inherited some workarounds that originated
from the default 1 MiB mapping always working. This 1 MiB mmap
won't necessarily succeed if the 1 MiB encroaches on a subsequent
memory range that has different cacheability.

To fix this, map in only 4 KiB when the table size is not known which is
the case for any forwarding entry or any low table entries on x86. That
smaller mapping is then searched for a valid header. Once a valid header
is found the full table is mapped and parsed allowing a forwarding entry
to take precedence.

Lastly, the lbtable is kept mapped in such that other operations can
just operate on mapping that was previously parsed.

In order to allow multiple in-flight mappings a struct mapping was
added which caused the ripple within the code. However, there shouldn't
be any more reasons for putting weird heuristics for when to fail. If
the tables are bad then it's very much possible that mappings will fail.
Retrying when the exact sizes are already known won't fix those issues.

BUG=b:66681446

Change-Id: Ica0737aada8dc07311eae867e87ef2fd24eae98d
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/21718
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2017-09-28 04:48:52 +00:00
..
abuild abuild: Allow building with any toolchain 2017-09-06 04:31:30 +00:00
acpi
amdfwtool amdfwtool: Move normal firmware 2 after fanless firmware2s 2017-04-27 23:27:06 +02:00
amdtools
archive archive: build archive tool with HOSTCC 2016-03-08 17:40:05 +01:00
arm_boot_tools/mksunxiboot
autoport util/autoport: Remove copy-pasting of PMIR register 2017-07-31 15:00:43 +00:00
bimgtool
blobtool
board_status board_status: Tell user where to find output when results are uploaded 2017-09-20 01:22:41 +00:00
broadcom
cbfstool util/cbfstool: Add "expand" command to make CBFS span an fmap region 2017-09-20 13:45:00 +00:00
cbmem util/cbmem: be explicit about memory map sizes 2017-09-28 04:48:52 +00:00
checklist util/checklist: Place tables in proper boot order 2016-08-03 18:01:32 +02:00
chromeos
crossgcc buildgcc: Fix up cross GCC building 2017-09-02 15:30:52 +00:00
docker util/docker: Update coreboot-sdk dockerfile 2017-09-20 01:29:55 +00:00
dtd_parser
ectool
exynos
futility
fuzz-tests
genbuild_h
genprof util/genprof: improve handling of command line arguments 2014-08-12 09:02:44 +02:00
gitconfig lint: update signed-off-by check 2017-08-17 11:26:31 +00:00
hugo util: change coreboot to lowercase 2017-06-27 18:26:01 +00:00
ifdfake
ifdtool ifdtool: Refactor some code 2017-09-17 21:31:22 +00:00
intelmetool intelmetool: Add support for Sunrise Point-H 2017-09-06 04:35:02 +00:00
inteltool util/inteltool: Remove duplicated error message, switch to snprintf 2017-08-22 10:10:34 +00:00
intelvbttool
ipqheader
k8resdump
kbc1126 kbc1126_ec_dump: fix some errors 2017-08-18 15:32:08 +00:00
kconfig
lint util/lint: update checkpatch & spelling.txt to upstream versions 2017-09-20 01:28:13 +00:00
marvell
me_cleaner util/me_cleaner: Pull the latest changes from upstream 2017-08-20 21:19:47 +00:00
mma
msrtool util/msrtool: Exit program after displaying the help message 2017-08-22 10:10:49 +00:00
mtkheader
nvidia
nvramtool util: change coreboot to lowercase 2017-06-27 18:26:01 +00:00
optionlist util: change coreboot to lowercase 2017-06-27 18:26:01 +00:00
post
release
riscvtools
rockchip
romcc smbus: Fix a typo ("Set the device I'm talking too") 2017-09-27 16:38:18 +00:00
sconfig
scripts util/scripts/cross-repo-cherrypick: improve cros-side rewrite 2017-09-15 20:57:57 +00:00
showdevicetree
spkmodem_recv tree: drop last paragraph of GPL copyright header 2015-10-31 21:37:39 +01:00
superiotool util/superiotool: Check for libpci before builing 2017-06-28 00:49:32 +00:00
testing util/testing: Don't keep tegra lp0 build results 2017-09-06 11:36:27 +00:00
uio_usbdebug
vgabios util/vgabios: Don't call redefined printk in printk 2017-07-21 15:45:41 +00:00
viatool Use more secure HTTPS URLs for coreboot sites 2017-06-07 12:04:50 +02:00
xcompile clang: Enable integrated assembler on clang builds 2017-09-02 15:21:35 +00:00