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: <bb87efe5-d0be-498a-25a1-008a7bebd452@arm.com>
Date:   Tue, 28 Jan 2020 10:56:18 -0600
From:   Jeremy Linton <jeremy.linton@....com>
To:     John Garry <john.garry@...wei.com>, rjw@...ysocki.net,
        lenb@...nel.org
Cc:     arnd@...db.de, olof@...om.net, linux-kernel@...r.kernel.org,
        linux-acpi@...r.kernel.org, guohanjun@...wei.com,
        gregkh@...uxfoundation.org
Subject: Re: [PATCH RFC 0/2] Add basic generic ACPI soc driver

Hi,

On 1/28/20 5:14 AM, John Garry wrote:
> A requirement has come up recently to be able to read system SoC packages
> identifiers from userspace [0].
> 
> For device tree FW-based systems, this would be quite straightforward, in
> that we could add a soc driver for that system and use the DT model
> identifier as the soc id - that's how most soc drivers seem to do it.
> 
> For ACPI-based systems, the only place I know to get (put) such SoC
> information is in the PPTT, specifically the ID Type Structure for a
> processor package node. A processor package node describes a physical
> boundary of a processor topology.

Well presumably that is one of the use cases for DMI, which has fields 
for the processor/socket as well as the machine vendor.

But, quickly looking at the use case, I can't help but think you don't 
really want any of the above, or the PPTT id. It seems the mapping 
should actually be tied directly to the uncore PMU definition, rather 
than a soc/machine/whatever identifier. Which would imply keying off one 
of the ACPI object identifiers for the PMU itself.


> 
> The ACPI spec does not declare how the fields in this structure must be
> used, however it does provide pretty clear examples, which I would expect
> most implementers to follow. As such, I try to solve the problem in 2
> parts:
> - Add ACPI PPTT API to get opaque package structure
> - Add basic ACPI generic soc driver, which can interpret the fields
>    for known platforms to fill in the ID Type Structure as per example
>    in the spec.
> 
> So I'm hoping here for some comments on this approach - hence the RFC.
> I've cc'ed some folks which may have suggestions.
> 
> [0] https://lore.kernel.org/linux-arm-kernel/1579876505-113251-6-git-send-email-john.garry@huawei.com/ ,
>      https://lore.kernel.org/linux-arm-kernel/1579876505-113251-1-git-send-email-john.garry@huawei.com/
> 
> John Garry (2):
>    ACPI/PPTT: Add acpi_pptt_get_package_info() API
>    soc: Add a basic ACPI generic driver
> 
>   drivers/acpi/pptt.c        |  81 +++++++++++++++++++++++++++++
>   drivers/soc/Makefile       |   1 +
>   drivers/soc/acpi_generic.c | 102 +++++++++++++++++++++++++++++++++++++
>   include/linux/acpi.h       |  13 +++++
>   4 files changed, 197 insertions(+)
>   create mode 100644 drivers/soc/acpi_generic.c
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ