An amd64_edac fix for single channel configurations + trivial cleanups
courtesy of Jingoo Han. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.14 (GNU/Linux) iQIcBAABAgAGBQJSC6mSAAoJEBLB8Bhh3lVKhKYQALt3lklah1BpZIqyTiLqtizN YVF/lSubpcHB2BfnZUzaSInE+17uo21DJ44tQ56O0lWDsxLqadJzTDiJ2BG5Ol3u JOIWti/Yl8YoCQQcir6QksBAUkR26iCpelO8kO6J/JWGEekVgl3Oik4NOmYrdN55 rUoHIyVdK5Z5y4j79Pmth7//+c6OFli1cAeUmBlIvxS9T4T2ZCz30jBim76VTS8H AjgaX/aBlE3SxAYoMWLZh1VglukxAVCG2qZ9lm7iNLCpkGwP59jT/DE9Gok2IXBg id9SMTkrpitijCyM3oKYox14Tl+QP/brElnWCVyVeRIpkVH8s2WUkU+qHeZztBg9 8i/aU9x4bOCkDjhvBjIM4jbYJAvvaVKlIXPvANO8xl/A0D7nCsmCs7DpritRHZEr 3y4N8SQsaamVD083+UaVciAo1XCpl5cNq9gH/Y7+U8h2bIThZn8HTbZ1uWgXaCY1 OwfElbJDKInsSmDVBEklMI8CF42YsjGQc2JC+A/3M3CapTfepKPg6SvptNQueZb+ SUw0mgGBumpdDQSHo5tPf5JL1y57ERkdOBVryrqYtr6qdjw3ox9o/+B8eTy3gkg1 b71LEhzG2UbdSVaHiYhRE/IR3W3yKzNX8Oh3BTHfp04jqnNijx4hHu9oX7j3W59M P/bd6GHHI5ZY66aLqCue =r2kL -----END PGP SIGNATURE----- Merge tag 'edac_for_3.12' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp into x86/ras Pull RAS/EDAC updates from Boris Petkov: "An amd64_edac fix for single channel configurations + trivial cleanups courtesy of Jingoo Han." Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
commit
c874b6ba55
|
@ -2642,8 +2642,15 @@ static int amd64_init_one_instance(struct pci_dev *F2)
|
|||
layers[0].size = pvt->csels[0].b_cnt;
|
||||
layers[0].is_virt_csrow = true;
|
||||
layers[1].type = EDAC_MC_LAYER_CHANNEL;
|
||||
layers[1].size = pvt->channel_count;
|
||||
|
||||
/*
|
||||
* Always allocate two channels since we can have setups with DIMMs on
|
||||
* only one channel. Also, this simplifies handling later for the price
|
||||
* of a couple of KBs tops.
|
||||
*/
|
||||
layers[1].size = 2;
|
||||
layers[1].is_virt_csrow = false;
|
||||
|
||||
mci = edac_mc_alloc(nid, ARRAY_SIZE(layers), layers, 0);
|
||||
if (!mci)
|
||||
goto err_siblings;
|
||||
|
|
|
@ -789,7 +789,7 @@ static struct cpc925_dev_info cpc925_devs[] = {
|
|||
.exit = cpc925_htlink_exit,
|
||||
.check = cpc925_htlink_check,
|
||||
},
|
||||
{0}, /* Terminated by NULL */
|
||||
{ }
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
|
@ -58,8 +58,10 @@ static int edac_set_poll_msec(const char *val, struct kernel_param *kp)
|
|||
if (!val)
|
||||
return -EINVAL;
|
||||
|
||||
ret = strict_strtol(val, 0, &l);
|
||||
if (ret == -EINVAL || ((int)l != l))
|
||||
ret = kstrtol(val, 0, &l);
|
||||
if (ret)
|
||||
return ret;
|
||||
if ((int)l != l)
|
||||
return -EINVAL;
|
||||
*((int *)kp->arg) = l;
|
||||
|
||||
|
|
|
@ -260,8 +260,7 @@ static void i3200_check(struct mem_ctl_info *mci)
|
|||
i3200_process_error_info(mci, &info);
|
||||
}
|
||||
|
||||
|
||||
void __iomem *i3200_map_mchbar(struct pci_dev *pdev)
|
||||
static void __iomem *i3200_map_mchbar(struct pci_dev *pdev)
|
||||
{
|
||||
union {
|
||||
u64 mchbar;
|
||||
|
|
|
@ -248,8 +248,7 @@ static void x38_check(struct mem_ctl_info *mci)
|
|||
x38_process_error_info(mci, &info);
|
||||
}
|
||||
|
||||
|
||||
void __iomem *x38_map_mchbar(struct pci_dev *pdev)
|
||||
static void __iomem *x38_map_mchbar(struct pci_dev *pdev)
|
||||
{
|
||||
union {
|
||||
u64 mchbar;
|
||||
|
|
Loading…
Reference in New Issue