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]
Message-ID: <20250617115707.GBaFFYE61vYHNuAkxR@fat_crate.local>
Date: Tue, 17 Jun 2025 13:57:07 +0200
From: Borislav Petkov <bp@...en8.de>
To: Tony Luck <tony.luck@...el.com>, Qiuxu Zhuo <qiuxu.zhuo@...el.com>
Cc: Marek Marczykowski-Górecki <marmarek@...isiblethingslab.com>,
	"open list:EDAC-IGEN6" <linux-edac@...r.kernel.org>,
	open list <linux-kernel@...r.kernel.org>
Subject: Re: NULL pointer dereference in igen6_probe - 6.16-rc2

On Tue, Jun 17, 2025 at 01:13:49PM +0200, Marek Marczykowski-Górecki wrote:
> [   13.562085] intel_pmc_core INT33A1:00: Assuming a default substate order for this platform
> [   13.562682] intel_pmc_core INT33A1:00:  initialized
> [   13.565035] EDAC MC0: Giving out device to module igen6_edac controller Intel_client_SoC MC#0: DEV 0000:00:00.0 (INTERRUPT)
> [   13.565746] EDAC igen6: Expected 2 mcs, but only 1 detected.

Well, folks, if you've detected only one memory controller, then work with
only one and do not kill the machine:

diff --git a/drivers/edac/igen6_edac.c b/drivers/edac/igen6_edac.c
index 1930dc00c791..23e26ba2d49b 100644
--- a/drivers/edac/igen6_edac.c
+++ b/drivers/edac/igen6_edac.c
@@ -1350,9 +1350,11 @@ static int igen6_register_mcis(struct pci_dev *pdev, u64 mchbar)
 		return -ENODEV;
 	}
 
-	if (lmc < res_cfg->num_imc)
+	if (lmc < res_cfg->num_imc) {
 		igen6_printk(KERN_WARNING, "Expected %d mcs, but only %d detected.",
 			     res_cfg->num_imc, lmc);
+		res_cfg->num_imc = lmc;
+	}
 
 	return 0;
 
---

but then that cfg struct is const :-\

drivers/edac/igen6_edac.c: In function ‘igen6_register_mcis’:
drivers/edac/igen6_edac.c:1356:34: error: assignment of member ‘num_imc’ in read-only object
 1356 |                 res_cfg->num_imc = lmc;
      |                                  ^


Unless it is some gunky crap this coreboot does - then we will have to have
a longer talk.

:-P

Thx.


-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ