diff options
author | PriyangaRamasamy <priyanga24@in.ibm.com> | 2021-03-03 08:01:04 +0300 |
---|---|---|
committer | Brad Bishop <bradleyb@fuzziesquirrel.com> | 2021-04-12 22:59:36 +0300 |
commit | 2e8e014d679748a5ce66e7d0f400c229fd2175db (patch) | |
tree | f79be4ab6f9d297a3b0b8c933e3806a604e887be | |
parent | 64f85d4ace6c30367462b7ef0816d1ab02071540 (diff) | |
download | openbmc-2e8e014d679748a5ce66e7d0f400c229fd2175db.tar.xz |
Bad VPD Installation in dreport
Bad VPD plugin is an IBM specific plugin which collects all the
corrupted VPD files from /tmp/bad-vpd and puts it as a part of user
initiated BMC dump.
Openpower-vpd-parser makes a copy of the corrupted vpd's into
/tmp/bad-vpd at runtime, whenever there occurs a VPD ECC exception or
VPD record/keyword data exception.
Installed badvpd plugin in dreport via phosphor-debug-collector recipe.
Placed badvpd plugin in
openbmc/phosphor-debug-collector/tools/dreport/ibm.d directory as we
collect bad vpds' only when "ibm-parser" feature flag is enabled.
Tested on simics.
root@rainier:~# dreport -v
Wed Mar 3 04:43:18 UTC 2021 Name: obmcdump_00000000_1614746598.tar.xz
Wed Mar 3 04:43:18 UTC 2021 Epochtime: 1614746598
Wed Mar 3 04:43:18 UTC 2021 ID: 00000000
Wed Mar 3 04:43:18 UTC 2021 Type: user
Wed Mar 3 04:43:18 UTC 2021 INFO: Collected disk usage
Wed Mar 3 04:43:18 UTC 2021 INFO: Collected failed services
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected Journal pretty log
Wed Mar 3 04:43:19 UTC 2021 INFO: Copied Memory info /proc/meminfo
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected top
Wed Mar 3 04:43:19 UTC 2021 INFO: Copied Bad VPD /tmp/bad-vpd
Wed Mar 3 04:43:19 UTC 2021 INFO: Copied OS release info /etc/os-release
Wed Mar 3 04:43:19 UTC 2021 INFO: No elog entries
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected inventory
Wed Mar 3 04:43:19 UTC 2021 INFO: Copied OBMC console log /var/log/obmc-console.log
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected ip addr
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected ip link
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected PRI-Flash: U-Boot environment variables
Wed Mar 3 04:43:19 UTC 2021 INFO: Copied GUARD Records /var/lib/phosphor-software-manager/pnor/prsv/GUARD
Wed Mar 3 04:43:19 UTC 2021 ERROR: /etc/alt_fw_env.config does not exist
Wed Mar 3 04:43:19 UTC 2021 INFO: Copied CPU info /proc/cpuinfo
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected uptime
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected BMC State
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected Chassis State
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected hostnamectl
Wed Mar 3 04:43:19 UTC 2021 INFO: Collected Host State
Adding Dump Header :/usr/share/dreport.d/include.d/gendumpheader
Wed Mar 3 04:44:08 UTC 2021 Report is available in /tmp
Wed Mar 3 04:44:08 UTC 2021 Successfully completed
Check the dump tar file generated in /tmp directory.
After skipping 628 bytes of dump header in tar, untar it.
The files in /tmp/bad-vpd directory gets collected into the bmc dump.
Signed-off-by: PriyangaRamasamy <priyanga24@in.ibm.com>
Change-Id: Ifdbfa56b8c67263271059dbee390092b92977775
-rw-r--r-- | meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend b/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend index 96b67b063..0cbca65aa 100644 --- a/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend +++ b/meta-ibm/recipes-phosphor/dump/phosphor-debug-collector_%.bbappend @@ -33,7 +33,20 @@ install_dreport_header() { install -m 0755 ${S}/tools/dreport.d/ibm.d/gendumpheader ${D}${dreport_include_dir}/ } +#Install ibm bad vpd script from dreport/ibm.d to dreport/plugins.d +install_ibm_bad_vpd() { + install -d ${D}${dreport_plugin_dir} + install -m 0755 ${S}/tools/dreport.d/ibm.d/badvpd ${D}${dreport_plugin_dir} +} + +#Link in the plugins so dreport run them at the appropriate time based on the plugin type +python link_ibm_bad_vpd() { + sourcedir = d.getVar('S', True) + script = os.path.join(sourcedir, "tools", "dreport.d", "ibm.d", "badvpd") + install_dreport_user_script(script, d) +} + IBM_INSTALL_POSTFUNCS = "install_ibm_plugins link_ibm_plugins" -IBM_INSTALL_POSTFUNCS_p10bmc += "install_dreport_header" +IBM_INSTALL_POSTFUNCS_p10bmc += "install_dreport_header install_ibm_bad_vpd link_ibm_bad_vpd" do_install[postfuncs] += "${IBM_INSTALL_POSTFUNCS}" |