mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-09 14:43:16 +00:00
EDAC/synopsys: Do not dump uninitialized pinf->col
On the ZynqMP platform, zynqmp_get_error_info() is used to read out error information. In this function, the pinf->col parameter is not used (it is only used by the Zynq platform's zynq_get_error_info()). So there's no need to print pinf->col on ZynqMP. In order to differentiate on which platform handle_error() is executed, use DDR_ECC_INTR_SUPPORT as the check condition to distinguish between Zynq and ZynqMP platforms. [ bp: Massage. ] Fixes: b500b4a029d57 ("EDAC, synopsys: Add ECC support for ZynqMP DDR controller") Signed-off-by: Sherry Sun <sherry.sun@nxp.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Manish Narani <manish.narani@xilinx.com> Link: https://lkml.kernel.org/r/1584365679-27443-1-git-send-email-sherry.sun@nxp.com
This commit is contained in:
parent
fb33c6510d
commit
2fb3f6e125
@ -477,16 +477,16 @@ static void handle_error(struct mem_ctl_info *mci, struct synps_ecc_status *p)
|
|||||||
|
|
||||||
if (p->ce_cnt) {
|
if (p->ce_cnt) {
|
||||||
pinf = &p->ceinfo;
|
pinf = &p->ceinfo;
|
||||||
if (!priv->p_data->quirks) {
|
if (priv->p_data->quirks & DDR_ECC_INTR_SUPPORT) {
|
||||||
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
||||||
"DDR ECC error type:%s Row %d Bank %d Col %d Bit Position: %d Data: 0x%08x",
|
"DDR ECC error type:%s Row %d Bank %d BankGroup Number %d Block Number %d Bit Position: %d Data: 0x%08x",
|
||||||
"CE", pinf->row, pinf->bank, pinf->col,
|
"CE", pinf->row, pinf->bank,
|
||||||
|
pinf->bankgrpnr, pinf->blknr,
|
||||||
pinf->bitpos, pinf->data);
|
pinf->bitpos, pinf->data);
|
||||||
} else {
|
} else {
|
||||||
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
||||||
"DDR ECC error type:%s Row %d Bank %d Col %d BankGroup Number %d Block Number %d Bit Position: %d Data: 0x%08x",
|
"DDR ECC error type:%s Row %d Bank %d Col %d Bit Position: %d Data: 0x%08x",
|
||||||
"CE", pinf->row, pinf->bank, pinf->col,
|
"CE", pinf->row, pinf->bank, pinf->col,
|
||||||
pinf->bankgrpnr, pinf->blknr,
|
|
||||||
pinf->bitpos, pinf->data);
|
pinf->bitpos, pinf->data);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -497,15 +497,15 @@ static void handle_error(struct mem_ctl_info *mci, struct synps_ecc_status *p)
|
|||||||
|
|
||||||
if (p->ue_cnt) {
|
if (p->ue_cnt) {
|
||||||
pinf = &p->ueinfo;
|
pinf = &p->ueinfo;
|
||||||
if (!priv->p_data->quirks) {
|
if (priv->p_data->quirks & DDR_ECC_INTR_SUPPORT) {
|
||||||
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
||||||
"DDR ECC error type :%s Row %d Bank %d Col %d ",
|
"DDR ECC error type :%s Row %d Bank %d BankGroup Number %d Block Number %d",
|
||||||
"UE", pinf->row, pinf->bank, pinf->col);
|
"UE", pinf->row, pinf->bank,
|
||||||
|
pinf->bankgrpnr, pinf->blknr);
|
||||||
} else {
|
} else {
|
||||||
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
snprintf(priv->message, SYNPS_EDAC_MSG_SIZE,
|
||||||
"DDR ECC error type :%s Row %d Bank %d Col %d BankGroup Number %d Block Number %d",
|
"DDR ECC error type :%s Row %d Bank %d Col %d ",
|
||||||
"UE", pinf->row, pinf->bank, pinf->col,
|
"UE", pinf->row, pinf->bank, pinf->col);
|
||||||
pinf->bankgrpnr, pinf->blknr);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci,
|
edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user