lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 20 Dec 2012 10:42:23 -0700
From:	doug thompson <norsk5@...oo.com>
To:	Herton Ronaldo Krzesinski <herton.krzesinski@...onical.com>
CC:	linux-kernel@...r.kernel.org, stable@...r.kernel.org,
	kernel-team@...ts.ubuntu.com, Jean Delvare <jdelvare@...e.de>,
	Mauro Carvalho Chehab <mchehab@...hat.com>,
	Doug Thompson <dougthompson@...ssion.com>
Subject: Re: [PATCH 141/241] i7300_edac: Fix error flag testing

Acked-by:  Doug Thompson <dougthompson@...ssion.com>


On 12/13/2012 06:58 AM, Herton Ronaldo Krzesinski wrote:
> 3.5.7.2 -stable review patch.  If anyone has any objections, please let me know.
>
> ------------------
>
> From: Jean Delvare <jdelvare@...e.de>
>
> commit 7e06b7a3333f5c7a0cec12aff20d39c5c87c0795 upstream.
>
> * Right-shift the values in GET_FBD_FAT_IDX and GET_FBD_NF_IDX, so
>   that the callers get the result they expect.
> * Fix definition of FERR_FAT_FBD_ERR_MASK.
> * Call GET_FBD_NF_IDX, not GET_FBD_FAT_IDX, when operating on
>   register FERR_NF_FBD. We were lucky they have the same definition.
>
> This fixes kernel bug #44131:
> https://bugzilla.kernel.org/show_bug.cgi?id=44131
>
> Signed-off-by: Jean Delvare <jdelvare@...e.de>
> Cc: Mauro Carvalho Chehab <mchehab@...hat.com>
> Cc: Doug Thompson <dougthompson@...ssion.com>
> Signed-off-by: Mauro Carvalho Chehab <mchehab@...hat.com>
> Signed-off-by: Herton Ronaldo Krzesinski <herton.krzesinski@...onical.com>
> ---
>  drivers/edac/i7300_edac.c |    8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/edac/i7300_edac.c b/drivers/edac/i7300_edac.c
> index 97c22fd..856a250 100644
> --- a/drivers/edac/i7300_edac.c
> +++ b/drivers/edac/i7300_edac.c
> @@ -215,8 +215,8 @@ static const char *ferr_fat_fbd_name[] = {
>  	[0]  = "Memory Write error on non-redundant retry or "
>  	       "FBD configuration Write error on retry",
>  };
> -#define GET_FBD_FAT_IDX(fbderr)	(fbderr & (3 << 28))
> -#define FERR_FAT_FBD_ERR_MASK ((1 << 0) | (1 << 1) | (1 << 2) | (1 << 3))
> +#define GET_FBD_FAT_IDX(fbderr)	(((fbderr) >> 28) & 3)
> +#define FERR_FAT_FBD_ERR_MASK ((1 << 0) | (1 << 1) | (1 << 2) | (1 << 22))
>  
>  #define FERR_NF_FBD	0xa0
>  static const char *ferr_nf_fbd_name[] = {
> @@ -243,7 +243,7 @@ static const char *ferr_nf_fbd_name[] = {
>  	[1]  = "Aliased Uncorrectable Non-Mirrored Demand Data ECC",
>  	[0]  = "Uncorrectable Data ECC on Replay",
>  };
> -#define GET_FBD_NF_IDX(fbderr)	(fbderr & (3 << 28))
> +#define GET_FBD_NF_IDX(fbderr)	(((fbderr) >> 28) & 3)
>  #define FERR_NF_FBD_ERR_MASK ((1 << 24) | (1 << 23) | (1 << 22) | (1 << 21) |\
>  			      (1 << 18) | (1 << 17) | (1 << 16) | (1 << 15) |\
>  			      (1 << 14) | (1 << 13) | (1 << 11) | (1 << 10) |\
> @@ -482,7 +482,7 @@ static void i7300_process_fbd_error(struct mem_ctl_info *mci)
>  		errnum = find_first_bit(&errors,
>  					ARRAY_SIZE(ferr_nf_fbd_name));
>  		specific = GET_ERR_FROM_TABLE(ferr_nf_fbd_name, errnum);
> -		branch = (GET_FBD_FAT_IDX(error_reg) == 2) ? 1 : 0;
> +		branch = (GET_FBD_NF_IDX(error_reg) == 2) ? 1 : 0;
>  
>  		pci_read_config_dword(pvt->pci_dev_16_1_fsb_addr_map,
>  			REDMEMA, &syndrome);

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ