From: <Mario.Limonciello@dell.com>
To: <andy.shevchenko@gmail.com>, <luto@kernel.org>
Cc: <dvhart@infradead.org>, <linux-kernel@vger.kernel.org>,
<platform-driver-x86@vger.kernel.org>, <quasisec@google.com>,
<pali.rohar@gmail.com>
Subject: RE: [PATCH v2 00/14] Introduce support for Dell SMBIOS over WMI
Date: Tue, 26 Sep 2017 19:17:17 +0000 [thread overview]
Message-ID: <7d52b19477ec4c00a51770bc292f3707@ausx13mpc120.AMER.DELL.COM> (raw)
In-Reply-To: <CAHp75Vd38p6YbE4okG1Bvfxp3Hv36P2ZTCQjSS_W1LrRgtjPVQ@mail.gmail.com>
> -----Original Message-----
> From: Andy Shevchenko [mailto:andy.shevchenko@gmail.com]
> Sent: Tuesday, September 26, 2017 3:06 PM
> To: Limonciello, Mario <Mario_Limonciello@Dell.com>
> Cc: dvhart@infradead.org; LKML <linux-kernel@vger.kernel.org>; Platform Driver
> <platform-driver-x86@vger.kernel.org>; quasisec@google.com; Pali Rohár
> <pali.rohar@gmail.com>
> Subject: Re: [PATCH v2 00/14] Introduce support for Dell SMBIOS over WMI
>
> On Tue, Sep 26, 2017 at 9:49 PM, Mario Limonciello
> <mario.limonciello@dell.com> wrote:
> > The existing way that the dell-smbios helper module and associated
> > other drivers (dell-laptop, dell-wmi) communicate with the platform
> > really isn't secure. It requires creating a buffer in physical
> > DMA32 memory space and passing that to the platform via SMM.
> >
> > Since the platform got a physical memory pointer, you've just got
> > to trust that the platform has only modified (and accessed) memory
> > within that buffer.
> >
> > Dell Platform designers recognize this security risk and offer a
> > safer way to communicate with the platform over ACPI. This is
> > in turn exposed via a WMI interface to the OS.
> >
> > When communicating over WMI-ACPI the communication doesn't occur
> > with physical memory pointers. When the ASL is invoked, the fixed
> > length ACPI buffer is copied to a small operating region. The ASL
> > will invoke the SMI, and SMM will only have access to this operating
> > region. When the ASL returns the buffer is copied back for the OS
> > to process.
> >
> > This method of communication should also deprecate the usage of the
> > dcdbas kernel module and software dependent upon it's interface.
> > Instead offer a character device interface for communicating with this
> > ASL method to allow userspace to use instead.
> >
> > To faciliate that this patch series introduces a generic way for WMI
> > drivers to be able to create discoverable character devices through
> > the WMI bus when desired.
> > Requiring WMI drivers to explicitly ask for this functionality will
> > act as an effective vendor whitelist to character device creation.
> >
>
> Thanks for an update, looks better now.
> I'm in the middle of going through it and noticed that patches 6 and 7
> sound like a fix to me.
> Perhaps better to move it to be first part of the series.
In v2 I'd say that all of 1 through 7 are fixes that even if the rest of the
series doesn't get pulled in immediately should land sooner.
I'll reorder 6 and 7 for the beginning though for v3 if v3 is necessary.
8 through 13 are the real "meat", and 14 is a fixup.
>
> Please, include Andy Lutomirski to Cc list, I'm pretty sure he is
> interested in changes like these to WMI.
Added. Andy you weren't CC'ed on the original or v2 submission, but if this
requires a v3 I'll include you.
>
> > changes between v1 and v2:
> > * Introduce another patch to sort the includes in wmi.c
> > * Introduce another patch to cleanup dell_wmi_check_descriptor_buffer
> > checks.
> > * Add a commit message to the pr_fmt commit
> > * Introduce includes to wmi.c in proper location
> > * Add Reviewed-by to relevant patches from Pali
> > * Make the WMI introduction patch fallback to legacy SMI
> > if compiled with CONFIG_DCDBAS
> > * Separate format of WMI and SMI buffers. WMI buffer supports more
> > arguments and data.
> > * Adjust the rename patch for changes to fallback
> > * Drop sysfs token creation patch
> > * Adjust WMI descriptor check patch for changes to fallback
> > * introduce another patch to remove needless includes in dell-smbios.c
> > * Add token ioctl interface to character device.
> > - Can query number of tokens
> > - Can query values in all tokens
> > * Expose format of all buffers and IOCTL commands to uapi header
> > * Drop the read interface from character device. It doesn't make
> > sense with multiple different ioctl methods.
> > * Default WMI interface to 32k (This would normally be queried via
> > MOF, but that's not possible yet)
> > * Create separate buffers for WMI and SMI. If WMI is available,
> > free the SMI buffer.
> > * Reorder patches so all fixups come first in the series.
> >
> > Mario Limonciello (14):
> > platform/x86: dell-wmi: label driver as handling notifications
> > platform/x86: dell-smbios: drop needless includes
> > platform/x86: dell-wmi: Don't match on descriptor GUID modalias
> > platform/x86: dell-smbios: Add pr_fmt definition to driver
> > platform/x86: wmi: sort include list
> > platform/x86: wmi: Cleanup exit routine in reverse order of init
> > platform/x86: wmi: destroy on cleanup rather than unregister
> > platform/x86: dell-smbios: Introduce a WMI-ACPI interface
> > platform/x86: dell-smbios: rename to dell-wmi-smbios
> > platform/x86: dell-wmi-smbios: Use Dell WMI descriptor check
> > platform/x86: wmi: create character devices when requested by drivers
> > platform/x86: dell-wmi-smbios: introduce character device for
> > userspace
> > platform/x86: Kconfig: Change the default settings for dell-wmi-smbios
> > platform/x86: dell-wmi-smbios: clean up wmi descriptor check
> >
> > Documentation/ABI/testing/dell-wmi-smbios | 10 +
> > MAINTAINERS | 8 +-
> > drivers/platform/x86/Kconfig | 13 +-
> > drivers/platform/x86/Makefile | 2 +-
> > drivers/platform/x86/dell-laptop.c | 2 +-
> > drivers/platform/x86/dell-smbios.c | 213 ---------
> > drivers/platform/x86/dell-wmi-smbios.c | 481 +++++++++++++++++++++
> > .../x86/{dell-smbios.h => dell-wmi-smbios.h} | 28 +-
> > drivers/platform/x86/dell-wmi.c | 78 +---
> > drivers/platform/x86/wmi.c | 116 ++++-
> > include/linux/wmi.h | 1 +
> > include/uapi/linux/dell-wmi-smbios.h | 55 +++
> > 12 files changed, 674 insertions(+), 333 deletions(-)
> > create mode 100644 Documentation/ABI/testing/dell-wmi-smbios
> > delete mode 100644 drivers/platform/x86/dell-smbios.c
> > create mode 100644 drivers/platform/x86/dell-wmi-smbios.c
> > rename drivers/platform/x86/{dell-smbios.h => dell-wmi-smbios.h} (74%)
> > create mode 100644 include/uapi/linux/dell-wmi-smbios.h
> >
> > --
> > 2.14.1
> >
>
>
>
> --
> With Best Regards,
> Andy Shevchenko
next prev parent reply other threads:[~2017-09-26 19:17 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-26 18:49 Mario Limonciello
2017-09-26 18:49 ` [PATCH v2 01/14] platform/x86: dell-wmi: label driver as handling notifications Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 02/14] platform/x86: dell-smbios: drop needless includes Mario Limonciello
2017-09-27 17:40 ` Darren Hart
2017-09-27 17:44 ` Mario.Limonciello
2017-09-27 17:58 ` Darren Hart
2017-09-29 14:59 ` kbuild test robot
2017-09-26 18:50 ` [PATCH v2 03/14] platform/x86: dell-wmi: Don't match on descriptor GUID modalias Mario Limonciello
2017-09-27 17:21 ` Darren Hart
2017-09-27 17:30 ` Mario.Limonciello
2017-09-27 17:44 ` Darren Hart
2017-09-26 18:50 ` [PATCH v2 04/14] platform/x86: dell-smbios: Add pr_fmt definition to driver Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 05/14] platform/x86: wmi: sort include list Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 06/14] platform/x86: wmi: Cleanup exit routine in reverse order of init Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 07/14] platform/x86: wmi: destroy on cleanup rather than unregister Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 08/14] platform/x86: dell-smbios: Introduce a WMI-ACPI interface Mario Limonciello
2017-09-27 22:18 ` Darren Hart
2017-09-26 18:50 ` [PATCH v2 09/14] platform/x86: dell-smbios: rename to dell-wmi-smbios Mario Limonciello
2017-09-26 20:06 ` Pali Rohár
2017-09-26 20:18 ` Mario.Limonciello
2017-09-27 22:30 ` Darren Hart
2017-09-29 14:53 ` kbuild test robot
2017-09-29 15:33 ` kbuild test robot
2017-09-26 18:50 ` [PATCH v2 10/14] platform/x86: dell-wmi-smbios: Use Dell WMI descriptor check Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 11/14] platform/x86: wmi: create character devices when requested by drivers Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 12/14] platform/x86: dell-wmi-smbios: introduce character device for userspace Mario Limonciello
2017-09-26 19:04 ` Andy Shevchenko
2017-09-26 20:10 ` Pali Rohár
2017-09-26 20:16 ` Mario.Limonciello
2017-09-26 18:50 ` [PATCH v2 13/14] platform/x86: Kconfig: Change the default settings for dell-wmi-smbios Mario Limonciello
2017-09-26 18:50 ` [PATCH v2 14/14] platform/x86: dell-wmi-smbios: clean up wmi descriptor check Mario Limonciello
2017-09-26 20:11 ` Pali Rohár
2017-09-26 20:19 ` Mario.Limonciello
2017-09-26 19:05 ` [PATCH v2 00/14] Introduce support for Dell SMBIOS over WMI Andy Shevchenko
2017-09-26 19:17 ` Mario.Limonciello [this message]
2017-09-27 17:11 ` Darren Hart
2017-09-27 17:31 ` Mario.Limonciello
2017-09-27 17:36 ` Darren Hart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7d52b19477ec4c00a51770bc292f3707@ausx13mpc120.AMER.DELL.COM \
--to=mario.limonciello@dell.com \
--cc=andy.shevchenko@gmail.com \
--cc=dvhart@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@kernel.org \
--cc=pali.rohar@gmail.com \
--cc=platform-driver-x86@vger.kernel.org \
--cc=quasisec@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®