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  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Thu, 7 Jan 2021 03:13:41 +0100
From:   Maximilian Luz <luzmaximilian@...il.com>
To:     Hans de Goede <hdegoede@...hat.com>, linux-kernel@...r.kernel.org
Cc:     Mark Gross <mgross@...ux.intel.com>,
        Andy Shevchenko <andy.shevchenko@...il.com>,
        Barnabás Pőcze <pobrn@...tonmail.com>,
        Arnd Bergmann <arnd@...db.de>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Rob Herring <robh@...nel.org>,
        Jiri Slaby <jirislaby@...nel.org>,
        "Rafael J . Wysocki" <rjw@...ysocki.net>,
        Len Brown <lenb@...nel.org>,
        Steven Rostedt <rostedt@...dmis.org>,
        Ingo Molnar <mingo@...hat.com>,
        Masahiro Yamada <masahiroy@...nel.org>,
        Michal Marek <michal.lkml@...kovi.net>,
        Jonathan Corbet <corbet@....net>,
        Blaž Hrastnik <blaz@...n.io>,
        Dorian Stoll <dorian.stoll@...p.io>,
        platform-driver-x86@...r.kernel.org, linux-serial@...r.kernel.org,
        linux-acpi@...r.kernel.org, linux-kbuild@...r.kernel.org,
        linux-doc@...r.kernel.org
Subject: Re: [PATCH v3 0/9] Add support for Microsoft Surface System
 Aggregator Module

On 1/7/21 12:40 AM, Hans de Goede wrote:
> Hi,
> 
> On 12/21/20 7:39 PM, Maximilian Luz wrote:
>> Hello,
>>
>> Here is version three of the Surface System Aggregator Module (SAM/SSAM)
>> driver series, adding initial support for the embedded controller on 5th
>> and later generation Microsoft Surface devices. Initial support includes
>> the ACPI interface to the controller, via which battery and thermal
>> information is provided on some of these devices.
>>
>> The first version and cover letter detailing what this series is about
>> can be found at
>>
>>    https://lore.kernel.org/platform-driver-x86/20201115192143.21571-1-luzmaximilian@gmail.com/
>>
>> the previous version (v2) at
>>
>>    https://lore.kernel.org/platform-driver-x86/20201203212640.663931-1-luzmaximilian@gmail.com/
>>
>> This patch-set can also be found at the following repository and
>> reference, if you prefer to look at a kernel tree instead of these
>> emails:
>>
>>    https://github.com/linux-surface/kernel tags/s/surface-aggregator/v3
>>
>> Thank you all for the feedback to and reviews of the previous versions,
>> I hope I have addressed all comments.
> 
> Thank you for your patch-series, I've applied the series to my
> review-hans branch:
> https://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86.git/log/?h=review-hans
> 
> This has been applied on top of:
> "platform/surface: SURFACE_PLATFORMS should depend on ACPI"
> 
> As requested. Since my review-hans branch has been fast-forwarded to 5.11-rc1
> there where some conflicts:
> 
> 6/9 "platform/surface: aggregator: Add dedicated bus and device type" had conflicts in:
> scripts/mod/devicetable-offsets.c
> scripts/mod/file2alias.c
> 
> 8/9 "platform/surface: Add Surface Aggregator user-space interface" had a conflict in:
> Documentation/userspace-api/ioctl/ioctl-number.rst
> 
> This conflict was caused by the addition of documentation of the sgx ioctls, these use
> 0xA4 as "Code" byte (shared with uapi/linux/tee.h), so the 0xA5 code for the sam cdev
> ioctl is still unique.
> 
> I'm pretty sure that I've properly resolved the conflicts, but please double-check.

Everything looks good to me. I'll compile your branch and run some tests
just in case, but I really don't expect there to be any problems. In the
unlikely event that I find anything, I'll submit a patch.

> Once I've run some tests on this branch the patches there will be
> added to the platform-drivers-x86/for-next branch and eventually
> will be included in the pdx86 pull-request to Linus for the next
> merge-window.

Thank you (and all others involved in reviewing this).

Regards,
Max
  
> Regards,
> 
> Hans
> 
> 
> 
> 
>> Note: In v3, I have dropped the explicit dependency of the core module
>> and driver on CONFIG_ACPI due to the incoming
>>
>>    [PATCH] platform/surface: SURFACE_PLATFORMS should depend on ACPI
>>
>> Thus, this series depends on said patch. This patch can be found at
>>
>>    https://www.spinics.net/lists/platform-driver-x86/msg23929.html
>>
>>
>> Changes in v1 (from RFC, overview):
>>   - move to platform/surface
>>   - add copyright lines
>>   - change SPDX identifier to GPL-2.0+ (was GPL-2.0-or-later)
>>   - change user-space interface from debugfs to misc-device
>>   - address issues in user-space interface
>>   - fix typos in commit messages and documentation
>>   - fix some bugs, address other issues
>>
>> Changes in v2 (overview):
>>   - simplify some code, mostly with regards to concurrency
>>   - add architectural overview to documentation
>>   - improve comments for documentation
>>   - use printk specifier for hex prefix instead of hard-coding it
>>   - spell check comments and strings, fix typos
>>   - unify comment style
>>   - run checkpatch --strict, fix these and other style issues
>>
>> Changes in v3 (overview):
>>   - remove explicit dependency on ACPI as this is going to be covered by
>>     CONFIG_SURFACE_PLATFORMS
>>   - simplify locking requirements
>>   - help enforce locking requirements via lockdep assertions
>>   - fix false-positive lockdep warning
>>   - warn on event enablement reference counter exhaustion
>>   - don't warn about unhandled event if event handling failed
>>   - validate flags on request initialization
>>   - improve documentation/add comments
>>   - replace 'iff' with 'if' in documentation and comments
>>
>> Changes regarding specific patches (and more details) can be found on
>> the individual patch.
>>
>>
>> Maximilian Luz (9):
>>    platform/surface: Add Surface Aggregator subsystem
>>    platform/surface: aggregator: Add control packet allocation caching
>>    platform/surface: aggregator: Add event item allocation caching
>>    platform/surface: aggregator: Add trace points
>>    platform/surface: aggregator: Add error injection capabilities
>>    platform/surface: aggregator: Add dedicated bus and device type
>>    docs: driver-api: Add Surface Aggregator subsystem documentation
>>    platform/surface: Add Surface Aggregator user-space interface
>>    platform/surface: Add Surface ACPI Notify driver
>>
>>   Documentation/driver-api/index.rst            |    1 +
>>   .../surface_aggregator/client-api.rst         |   38 +
>>   .../driver-api/surface_aggregator/client.rst  |  393 +++
>>   .../surface_aggregator/clients/cdev.rst       |   87 +
>>   .../surface_aggregator/clients/index.rst      |   21 +
>>   .../surface_aggregator/clients/san.rst        |   44 +
>>   .../driver-api/surface_aggregator/index.rst   |   21 +
>>   .../surface_aggregator/internal-api.rst       |   67 +
>>   .../surface_aggregator/internal.rst           |  577 ++++
>>   .../surface_aggregator/overview.rst           |   77 +
>>   .../driver-api/surface_aggregator/ssh.rst     |  344 +++
>>   .../userspace-api/ioctl/ioctl-number.rst      |    2 +
>>   MAINTAINERS                                   |   13 +
>>   drivers/platform/surface/Kconfig              |   38 +
>>   drivers/platform/surface/Makefile             |    3 +
>>   drivers/platform/surface/aggregator/Kconfig   |   68 +
>>   drivers/platform/surface/aggregator/Makefile  |   17 +
>>   drivers/platform/surface/aggregator/bus.c     |  415 +++
>>   drivers/platform/surface/aggregator/bus.h     |   27 +
>>   .../platform/surface/aggregator/controller.c  | 2579 +++++++++++++++++
>>   .../platform/surface/aggregator/controller.h  |  285 ++
>>   drivers/platform/surface/aggregator/core.c    |  839 ++++++
>>   .../platform/surface/aggregator/ssh_msgb.h    |  205 ++
>>   .../surface/aggregator/ssh_packet_layer.c     | 2057 +++++++++++++
>>   .../surface/aggregator/ssh_packet_layer.h     |  190 ++
>>   .../platform/surface/aggregator/ssh_parser.c  |  228 ++
>>   .../platform/surface/aggregator/ssh_parser.h  |  154 +
>>   .../surface/aggregator/ssh_request_layer.c    | 1264 ++++++++
>>   .../surface/aggregator/ssh_request_layer.h    |  143 +
>>   drivers/platform/surface/aggregator/trace.h   |  632 ++++
>>   .../platform/surface/surface_acpi_notify.c    |  886 ++++++
>>   .../surface/surface_aggregator_cdev.c         |  303 ++
>>   include/linux/mod_devicetable.h               |   18 +
>>   include/linux/surface_acpi_notify.h           |   39 +
>>   include/linux/surface_aggregator/controller.h |  824 ++++++
>>   include/linux/surface_aggregator/device.h     |  423 +++
>>   include/linux/surface_aggregator/serial_hub.h |  672 +++++
>>   include/uapi/linux/surface_aggregator/cdev.h  |   78 +
>>   scripts/mod/devicetable-offsets.c             |    8 +
>>   scripts/mod/file2alias.c                      |   23 +
>>   40 files changed, 14103 insertions(+)
>>   create mode 100644 Documentation/driver-api/surface_aggregator/client-api.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/client.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/clients/cdev.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/clients/index.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/clients/san.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/index.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/internal-api.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/internal.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/overview.rst
>>   create mode 100644 Documentation/driver-api/surface_aggregator/ssh.rst
>>   create mode 100644 drivers/platform/surface/aggregator/Kconfig
>>   create mode 100644 drivers/platform/surface/aggregator/Makefile
>>   create mode 100644 drivers/platform/surface/aggregator/bus.c
>>   create mode 100644 drivers/platform/surface/aggregator/bus.h
>>   create mode 100644 drivers/platform/surface/aggregator/controller.c
>>   create mode 100644 drivers/platform/surface/aggregator/controller.h
>>   create mode 100644 drivers/platform/surface/aggregator/core.c
>>   create mode 100644 drivers/platform/surface/aggregator/ssh_msgb.h
>>   create mode 100644 drivers/platform/surface/aggregator/ssh_packet_layer.c
>>   create mode 100644 drivers/platform/surface/aggregator/ssh_packet_layer.h
>>   create mode 100644 drivers/platform/surface/aggregator/ssh_parser.c
>>   create mode 100644 drivers/platform/surface/aggregator/ssh_parser.h
>>   create mode 100644 drivers/platform/surface/aggregator/ssh_request_layer.c
>>   create mode 100644 drivers/platform/surface/aggregator/ssh_request_layer.h
>>   create mode 100644 drivers/platform/surface/aggregator/trace.h
>>   create mode 100644 drivers/platform/surface/surface_acpi_notify.c
>>   create mode 100644 drivers/platform/surface/surface_aggregator_cdev.c
>>   create mode 100644 include/linux/surface_acpi_notify.h
>>   create mode 100644 include/linux/surface_aggregator/controller.h
>>   create mode 100644 include/linux/surface_aggregator/device.h
>>   create mode 100644 include/linux/surface_aggregator/serial_hub.h
>>   create mode 100644 include/uapi/linux/surface_aggregator/cdev.h
>>
> 

Powered by blists - more mailing lists