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-next>] [day] [month] [year] [list]
Message-ID: <2511c7aa-8ce6-a803-a1ea-6121df79c677@amazon.com>
Date:   Mon, 2 Jan 2023 14:17:24 +0200
From:   "Shenhar, Talel" <talel@...zon.com>
To:     <krzysztof.kozlowski@...aro.org>, <bp@...en8.de>
CC:     <talel@...zon.com>, <talelshenhar@...il.com>,
        <shellykz@...zon.com>, <linux-edac@...r.kernel.org>,
        <linux-kernel@...r.kernel.org>
Subject: RFC on drivers/memory vs drivers/edac memory mapping for DDR
 Controller

Hi,

Want to consult on a topic that involve both drivers/memory and 
drivers/edac.

* We want to introduce driver that reads DDR controller RAS register and 
notify for ECC errors by using EDAC MC API found in drivers/edac.
* We also want to have a capability to dynamically change DDR refresh 
rate based on thermal values (best to be done in drivers/memory ?).

The pain point here is that both capabilities are controlled from the 
DDR controller.
This create issue while using 
devm_platform_ioremap_resource*->devm_request_mem_region which prevent 
two mapping of same area.

It seems to be expected problem as we have 2 "framework" (edac and 
memory) split while both aim for same HW unit.
What is the recommended way to face such conflicts?

We had several concept in mind but would love to get your point of view 
first.

Things we had in mind:
1) map more specific region to avoid conflict (we don't need the same 
registers on both entity so if we do very specific multiple mapping this 
shall be resolved)
2) use other kernel API for mapping that doesn't do request_mem_region 
(or use the reserve only for one of them)
3) have single driver (edac mc) handle also the refresh rate
4) export edac_mc.h and have the drivers/memory have all the needed code 
to do both edac and refresh rate under drivers/memory

Your recommendation shall be appreciated!

Thanks,
Talel.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ